From: K.Kosako Date: Wed, 28 Aug 2019 04:01:03 +0000 (+0900) Subject: fix data string length for utf-16 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3836c34a2728f6d70124532682fb2c98ada433ad;p=onig fix data string length for utf-16 --- diff --git a/harnesses/encode-harness.c b/harnesses/encode-harness.c index efc721b..26cab6d 100644 --- a/harnesses/encode-harness.c +++ b/harnesses/encode-harness.c @@ -135,6 +135,11 @@ int LLVMFuzzerTestOneInput(const uint8_t * Data, size_t Size) data += PATTERN_SIZE; remaining_size -= PATTERN_SIZE; +#if defined(UTF16_BE) || defined(UTF16_LE) + if (remaining_size % 2 == 1) + remaining_size--; +#endif + unsigned char *str = (unsigned char*)malloc(remaining_size+4); memset(str, 0, remaining_size+4); memcpy(str, data, remaining_size);