diff options
author | Maxim Kuvyrkov <maxim@codesourcery.com> | 2012-10-15 17:22:41 -0700 |
---|---|---|
committer | Maxim Kuvyrkov <maxim@codesourcery.com> | 2012-10-15 17:22:41 -0700 |
commit | e9f372520618161d7d73e028ca23818e83b88bbc (patch) | |
tree | fe653203bdee68e734135ade5c34b2f3aa515611 | |
parent | b8d7c0968c095d25fded0e2dfea1a16b1fd42911 (diff) | |
download | glibc-e9f372520618161d7d73e028ca23818e83b88bbc.tar.gz glibc-e9f372520618161d7d73e028ca23818e83b88bbc.tar.xz glibc-e9f372520618161d7d73e028ca23818e83b88bbc.zip |
Fix BZ #14716: memmem crash
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | string/str-two-way.h | 4 |
3 files changed, 9 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog index 9343ce283a..0c05941f6f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-10-16 Maxim Kuvyrkov <maxim@codesourcery.com> + + * NEWS: Mention BZ #14716. + * string/str-two-way.h (two_way_short_needle): Fix thinko introduced + when removing AVAILABLE1_USES_J macro. + 2012-10-12 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/x86/bits/byteswap.h: Include <bits/types.h>. diff --git a/NEWS b/NEWS index 4d18638131..952670221e 100644 --- a/NEWS +++ b/NEWS @@ -16,7 +16,7 @@ Version 2.17 14336, 14337, 14347, 14349, 14376, 14417, 14459, 14476, 14477, 14505, 14510, 14516, 14518, 14519, 14530, 14532, 14538, 14543, 14544, 14545, 14557, 14562, 14568, 14576, 14579, 14583, 14587, 14602, 14621, 14638, - 14645, 14648, 14652, 14660, 14661. + 14645, 14648, 14652, 14660, 14661, 14716. * Support for STT_GNU_IFUNC symbols added for s390 and s390x. Optimized versions of memcpy, memset, and memcmp added for System z10 and diff --git a/string/str-two-way.h b/string/str-two-way.h index d2572da408..d082fe0a09 100644 --- a/string/str-two-way.h +++ b/string/str-two-way.h @@ -309,13 +309,13 @@ two_way_short_needle (const unsigned char *haystack, size_t haystack_len, != (haystack_char = CANON_ELEMENT (*phaystack++))) { RET0_IF_0 (haystack_char); -#if CHECK_EOL +#if !CHECK_EOL ++j; #endif continue; } -#if !CHECK_EOL +#if CHECK_EOL /* Calculate J if it wasn't kept up-to-date in the first-character loop. */ j = phaystack - &haystack[suffix] - 1; |