From 4f868b705b3eaf3541197208399940ad1f807063 Mon Sep 17 00:00:00 2001 From: Alexander Vdolainen Date: Tue, 10 Feb 2026 18:21:31 +0200 Subject: [PATCH] fix escan issue in copyless mode; --- ndbuf.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ndbuf.c b/ndbuf.c index 14b8a49..65fe06f 100644 --- a/ndbuf.c +++ b/ndbuf.c @@ -493,6 +493,7 @@ int ndbuf_escan_va(ndbuf_t *b, const char *fmt, int argc, va_list ap) if(__is_moless(fo)) { *d._cstr = b->raw + b->curr; + b->curr += clen; } else { if(__is_usermo(fo)) *d._cstr = b->mop->alloc(clen + sizeof(char)); else *d._cstr = malloc(clen + sizeof(char)); @@ -519,6 +520,7 @@ int ndbuf_escan_va(ndbuf_t *b, const char *fmt, int argc, va_list ap) if(__is_moless(fo)) { *d._dp = b->raw + b->curr; + b->curr += clen; } else { if(__is_usermo(fo)) *d._dp = b->mop->alloc(clen); else *d._dp = malloc(clen); @@ -546,6 +548,7 @@ int ndbuf_escan_va(ndbuf_t *b, const char *fmt, int argc, va_list ap) } if(__is_moless(fo)) { *d._dp = b->raw + b->curr; + b->curr += clen; } else { if(__is_usermo(fo)) *d._dp = b->mop->alloc(clen); else *d._dp = malloc(clen);