stringdex(): Clarified what it does
authormarkus schnalke <meillo@marmaro.de>
Thu, 25 Sep 2014 11:17:14 +0000 (13:17 +0200)
committermarkus schnalke <meillo@marmaro.de>
Thu, 25 Sep 2014 11:17:14 +0000 (13:17 +0200)
`stringdex' stands for `string index'. (See Changlog for why the `g'
was added.) This function is different to strcasestr() ... in the
order of the arguments and in the return value.

sbr/strindex.c

index 2513b30..b3a2b74 100644 (file)
@@ -1,5 +1,6 @@
 /*
 ** strindex.c -- "unsigned" lexical index
 /*
 ** strindex.c -- "unsigned" lexical index
+**            -- Returns the index at which `needle' appears in `haystack' 
 **
 ** This code is Copyright (c) 2002, by the authors of nmh.  See the
 ** COPYRIGHT file in the root directory of the nmh distribution for
 **
 ** This code is Copyright (c) 2002, by the authors of nmh.  See the
 ** COPYRIGHT file in the root directory of the nmh distribution for
 #include <h/mh.h>
 
 int
 #include <h/mh.h>
 
 int
-stringdex(char *p1, char *p2)
+stringdex(char *needle, char *haystack)
 {
        char *p;
 
 {
        char *p;
 
-       if (p1 == NULL || p2 == NULL)
+       if (needle == NULL || haystack == NULL)
                return -1;
 
                return -1;
 
-       for (p = p2; *p; p++)
-               if (uprf(p, p1))
-                       return (p - p2);
+       for (p = haystack; *p; p++)
+               if (strncasecmp(p, needle, strlen(needle))==0)
+                       return (p - haystack);
 
        return -1;
 }
 
        return -1;
 }