2001-02-21  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/i686/strtok.S: Continue to return NULL after the
	first time this happened.

2001-02-21  Andreas Jaeger  <aj@suse.de>

	* string/tst-strtok.c: New testcase, reported by
	Andrew Church <achurch@achurch.org>.
This commit is contained in:
Ulrich Drepper 2001-02-21 15:39:07 +00:00
parent b85b133445
commit 1999031e04
3 changed files with 36 additions and 1 deletions

View File

@ -1,3 +1,13 @@
2001-02-21 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/i686/strtok.S: Continue to return NULL after the
first time this happened.
2001-02-21 Andreas Jaeger <aj@suse.de>
* string/tst-strtok.c: New testcase, reported by
Andrew Church <achurch@achurch.org>.
2001-02-20 Ulrich Drepper <drepper@redhat.com>
* libio/iofwide.c: Remove fwide alias.

23
string/tst-strtok.c Normal file
View File

@ -0,0 +1,23 @@
/* Testcase for strtok reported by Andrew Church <achurch@achurch.org>. */
#include <stdio.h>
#include <string.h>
int
main (void)
{
char buf[1] = { 0 };
int result = 0;
if (strtok (buf, " ") != NULL)
{
puts ("first strtok call did return NULL");
result = 1;
}
else if (strtok (NULL, " ") != NULL)
{
puts ("second strtok call did return NULL");
result = 1;
}
return result;
}

View File

@ -1,6 +1,6 @@
/* strtok (str, delim) -- Return next DELIM separated token from STR.
For Intel 80686.
Copyright (C) 1998, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -123,6 +123,8 @@ ENTRY (BP_SYM (FUNCTION))
the last run. */
cmpl $0, %edx
cmove %eax, %edx
testl %edx, %edx
jz L(returnNULL)
#if __BOUNDED_POINTERS__
# ifdef USE_AS_STRTOK_R
movl SAVE(%esp), %ecx /* borrow %ecx for a moment */