]> git.saurik.com Git - apple/libc.git/blobdiff - string/FreeBSD/strnstr.c
Libc-997.1.1.tar.gz
[apple/libc.git] / string / FreeBSD / strnstr.c
index 9f3b038f46e1457ee4f277f5da2a0062c1c6d199..ca12ba1032850bbce5b64a3013b5707f35a0732a 100644 (file)
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
  * 4. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
@@ -39,7 +35,7 @@
 static char sccsid[] = "@(#)strstr.c   8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/string/strnstr.c,v 1.2 2001/11/07 19:55:16 obrien Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/string/strnstr.c,v 1.5 2009/02/03 17:58:20 danger Exp $");
 
 #include <string.h>
 
@@ -48,10 +44,7 @@ __FBSDID("$FreeBSD: src/lib/libc/string/strnstr.c,v 1.2 2001/11/07 19:55:16 obri
  * first slen characters of s.
  */
 char *
-strnstr(s, find, slen)
-       const char *s;
-       const char *find;
-       size_t slen;
+strnstr(const char *s, const char *find, size_t slen)
 {
        char c, sc;
        size_t len;
@@ -60,7 +53,7 @@ strnstr(s, find, slen)
                len = strlen(find);
                do {
                        do {
-                               if ((sc = *s++) == '\0' || slen-- < 1)
+                               if (slen-- < 1 || (sc = *s++) == '\0')
                                        return (NULL);
                        } while (sc != c);
                        if (len > slen)