]> git.ipfire.org Git - thirdparty/git.git/commitdiff
skip_prefix(): scan prefix only once
authorDavid Kastrup <dak@gnu.org>
Mon, 3 Mar 2014 23:22:15 +0000 (00:22 +0100)
committerJunio C Hamano <gitster@pobox.com>
Mon, 3 Mar 2014 23:38:14 +0000 (15:38 -0800)
Signed-off-by: David Kastrup <dak@gnu.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-compat-util.h

index cbd86c37f51c00679498107d1a05131c19afa36e..bca22ae54e7f6e48afec5683594bcd91a7812eee 100644 (file)
@@ -357,8 +357,11 @@ extern int suffixcmp(const char *str, const char *suffix);
 
 static inline const char *skip_prefix(const char *str, const char *prefix)
 {
-       size_t len = strlen(prefix);
-       return strncmp(str, prefix, len) ? NULL : str + len;
+       do {
+               if (!*prefix)
+                       return str;
+       } while (*str++ == *prefix++);
+       return NULL;
 }
 
 #if defined(NO_MMAP) || defined(USE_WIN32_MMAP)