simplify stristart()
authorMåns Rullgård <mans@mansr.com>
Sat, 23 Jun 2007 00:47:28 +0000 (00:47 +0000)
committerMåns Rullgård <mans@mansr.com>
Sat, 23 Jun 2007 00:47:28 +0000 (00:47 +0000)
Originally committed as revision 9393 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/cutils.c

index 8580106..eeeef51 100644 (file)
@@ -44,23 +44,15 @@ int strstart(const char *str, const char *pfx, const char **ptr)
  * prefix.
  *
  * @param str input string
- * @param val prefix to test
+ * @param pfx prefix to test
  * @param ptr updated after the prefix in str in there is a match
  * @return TRUE if there is a match */
-int stristart(const char *str, const char *val, const char **ptr)
+int stristart(const char *str, const char *pfx, const char **ptr)
 {
-    const char *p, *q;
-    p = str;
-    q = val;
-    while (*q != '\0') {
-        if (toupper(*(const unsigned char *)p) != toupper(*(const unsigned char *)q))
-            return 0;
-        p++;
-        q++;
-    }
-    if (ptr)
-        *ptr = p;
-    return 1;
+    while (*pfx && toupper((unsigned)*pfx++) == toupper((unsigned)*str++));
+    if (!*pfx && ptr)
+        *ptr = str;
+    return !*pfx;
 }
 
 /**