From: Richard W.M. Jones Date: Wed, 13 Apr 2011 12:54:05 +0000 (+0100) Subject: Really fix the case where a UTF-16 string contains junk after the string. X-Git-Tag: 1.2.5~5 X-Git-Url: http://git.annexia.org/?a=commitdiff_plain;h=3e941d7ef4163b8882b1296adfd837c507a81075;p=hivex.git Really fix the case where a UTF-16 string contains junk after the string. The previous commit b71b88f588f8660935a7d462e97b84aa2d669249 attempted to fix this, but got the test the wrong way round so the length would never be shorter. --- diff --git a/lib/hivex.c b/lib/hivex.c index 860c85c..3f4c629 100644 --- a/lib/hivex.c +++ b/lib/hivex.c @@ -1335,7 +1335,7 @@ hivex_value_string (hive_h *h, hive_value_h value) * (Found by Hilko Bengen in a fresh Windows XP SOFTWARE hive). */ size_t slen = utf16_string_len_in_bytes_max (data, len); - if (slen > len) + if (slen < len) len = slen; char *ret = windows_utf16_to_utf8 (data, len);