X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=libiberty%2Fstrstr.c;h=60902ea40ee80b513a525f9403728398ea876d7e;hb=013e3554b269aa1da0fcd478969f0df65341e50e;hp=e7360341bc02be061948cfba4bd31616b136eea2;hpb=39423523167c47f72822dbb9eb3ab4a0dfeafe68;p=deliverable%2Fbinutils-gdb.git diff --git a/libiberty/strstr.c b/libiberty/strstr.c index e7360341bc..60902ea40e 100644 --- a/libiberty/strstr.c +++ b/libiberty/strstr.c @@ -6,8 +6,8 @@ @deftypefn Supplemental char* strstr (const char *@var{string}, const char *@var{sub}) This function searches for the substring @var{sub} in the string -@var{string}, not including the terminating NUL characters. A pointer -to the first occurance of @var{sub} is returned, or NULL if the +@var{string}, not including the terminating null characters. A pointer +to the first occurrence of @var{sub} is returned, or @code{NULL} if the substring is absent. If @var{sub} points to a string with zero length, the function returns @var{string}. @@ -20,24 +20,22 @@ length, the function returns @var{string}. /* FIXME: The above description is ANSI compiliant. This routine has not been validated to comply with it. -fnf */ +#include + +extern char *strchr (const char *, int); +extern int strncmp (const void *, const void *, size_t); +extern size_t strlen (const char *); + char * -strstr (s1, s2) - char *s1, *s2; +strstr (const char *s1, const char *s2) { - register char *p = s1; - extern char *strchr (); - extern int strncmp (); -#if __GNUC__==2 - extern __SIZE_TYPE__ strlen (); -#endif - register int len = strlen (s2); + const char *p = s1; + const size_t len = strlen (s2); for (; (p = strchr (p, *s2)) != 0; p++) { if (strncmp (p, s2, len) == 0) - { - return (p); - } + return (char *)p; } return (0); }