skip_prefix(): scan prefix only once
Signed-off-by: David Kastrup <dak@gnu.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
David Kastrup committed
Mar 4, 2014 at 00:22 UTC
ba399c46d9d3930871480ec24518b1541bfdbab3
1 file changed
+5
-2
git-compat-util.h
+5
-2
@@ -357,8 +357,11 @@ extern int suffixcmp(const char *str, const char *suffix);
357
358
static inline const char *skip_prefix(const char *str, const char *prefix)
359
{
360
- size_t len = strlen(prefix);
361
- return strncmp(str, prefix, len) ? NULL : str + len;
360
+ do {
361
+ if (!*prefix)
362
+ return str;
363
+ } while (*str++ == *prefix++);
364
+ return NULL;
365
}
366
367
#if defined(NO_MMAP) || defined(USE_WIN32_MMAP)