From: Alain Spineux Date: Fri, 27 Aug 2021 13:38:44 +0000 (+0200) Subject: fix the %W hexdump output size limit problem in bsnprintf X-Git-Tag: Release-11.3.2~360 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6d51668b499b6fc5d7abd634f034fcbd97b9159d;p=thirdparty%2Fbacula.git fix the %W hexdump output size limit problem in bsnprintf - bsnprintf was display twice the number of digits - this is exclusively used by dedup --- diff --git a/bacula/src/lib/bsnprintf.c b/bacula/src/lib/bsnprintf.c index 5efad8e23..ebdf5a239 100644 --- a/bacula/src/lib/bsnprintf.c +++ b/bacula/src/lib/bsnprintf.c @@ -438,7 +438,7 @@ static int32_t fmthex(char *buffer, int32_t currlen, int32_t maxlen, if (min <= 0) { return 0; /* min is mandatory */ } - while (i < min) { + while (2*i+1 < min) { // every single input char generate 2 digits to output outch(hexatable[(value[i]&0xF0)>>4]); outch(hexatable[value[i]&0x0F]); i++;