diff options
author | Ulrich Drepper <drepper@redhat.com> | 2006-01-10 00:25:07 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2006-01-10 00:25:07 +0000 |
commit | bc795d0b3065b9d03fcbf200ae889047350323df (patch) | |
tree | b508e2df5a57bb0c0e58e78db43ecebf2eb96fc3 /sysdeps/i386 | |
parent | 71ea167b1d3b01e78378b4863d87b5affb5def5f (diff) | |
download | glibc-bc795d0b3065b9d03fcbf200ae889047350323df.tar.gz glibc-bc795d0b3065b9d03fcbf200ae889047350323df.tar.xz glibc-bc795d0b3065b9d03fcbf200ae889047350323df.zip |
[BZ #2126]
* sysdeps/i386/i686/strtok.S: Store pointer to NUL byte if NULL is returned. * sysdeps/i386/strtok.S: Likewise. * sysdeps/x86_64/strtok.S: Likewise. * string/Makefile (tests): Add bug-strtok1. * string/bug-strtok1.c: New file.
Diffstat (limited to 'sysdeps/i386')
-rw-r--r-- | sysdeps/i386/i686/strtok.S | 10 | ||||
-rw-r--r-- | sysdeps/i386/strtok.S | 6 |
2 files changed, 12 insertions, 4 deletions
diff --git a/sysdeps/i386/i686/strtok.S b/sysdeps/i386/i686/strtok.S index 0cd266a2a1..fe225e5485 100644 --- a/sysdeps/i386/i686/strtok.S +++ b/sysdeps/i386/i686/strtok.S @@ -1,6 +1,6 @@ /* strtok (str, delim) -- Return next DELIM separated token from STR. For Intel 80686. - Copyright (C) 1998, 2000, 2001, 2005 Free Software Foundation, Inc. + Copyright (C) 1998, 2000, 2001, 2005, 2006 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -250,9 +250,9 @@ L(8): cmpl %eax, %edx cmovne %ecx, %edx /* Store the pointer to the next character. */ -# ifdef USE_AS_STRTOK_R +#ifdef USE_AS_STRTOK_R movl SAVE(%esp), %ecx -# endif +#endif movl %edx, SAVE_PTR CHECK_BOUNDS_HIGH (%edx, SAVE_PTR, jb) RETURN_BOUNDED_POINTER (SAVE_PTR) @@ -271,6 +271,10 @@ L(epilogue): L(returnNULL): xorl %eax, %eax +#ifdef USE_AS_STRTOK_R + movl SAVE(%esp), %ecx +#endif + movl %edx, SAVE_PTR RETURN_NULL_BOUNDED_POINTER jmp L(epilogue) diff --git a/sysdeps/i386/strtok.S b/sysdeps/i386/strtok.S index 88b343b6fe..c5f40a83b1 100644 --- a/sysdeps/i386/strtok.S +++ b/sysdeps/i386/strtok.S @@ -1,6 +1,6 @@ /* strtok (str, delim) -- Return next DELIM separated token from STR. For Intel 80x86, x>=3. - Copyright (C) 1996-1998, 2000, 2001, 2005 Free Software Foundation, Inc. + Copyright (C) 1996-1998,2000,2001,2005,2006 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996. @@ -385,6 +385,10 @@ L(epilogue): L(returnNULL): xorl %eax, %eax +#ifdef USE_AS_STRTOK_R + movl SAVE(%esp), %ecx +#endif + movl %edx, SAVE_PTR RETURN_NULL_BOUNDED_POINTER jmp L(epilogue) |