Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> writes: > starts_with() started out as a copy of prefixcmp(). But if we don't > care about the sorting order, the logic looks closer to > skip_prefix(). This looks like a good thing to do. > > Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> > --- Sure, but the implementation of skip_prefix() scans the prefix string twice, while prefixcmp() aka starts_with() does it only once. I'd expect a later step in this series would rectify this micro regression in the performance, though ;-) > git-compat-util.h | 6 +++++- > strbuf.c | 9 --------- > 2 files changed, 5 insertions(+), 10 deletions(-) > > diff --git a/git-compat-util.h b/git-compat-util.h > index b73916b..84f1078 100644 > --- a/git-compat-util.h > +++ b/git-compat-util.h > @@ -350,7 +350,6 @@ extern void set_die_routine(NORETURN_PTR void (*routine)(const char *err, va_lis > extern void set_error_routine(void (*routine)(const char *err, va_list params)); > extern void set_die_is_recursing_routine(int (*routine)(void)); > > -extern int starts_with(const char *str, const char *prefix); > extern int prefixcmp(const char *str, const char *prefix); > extern int ends_with(const char *str, const char *suffix); > extern int suffixcmp(const char *str, const char *suffix); > @@ -361,6 +360,11 @@ static inline const char *skip_prefix(const char *str, const char *prefix) > return strncmp(str, prefix, len) ? NULL : str + len; > } > > +static inline int starts_with(const char *str, const char *prefix) > +{ > + return skip_prefix(str, prefix) != NULL; > +} > + > #if defined(NO_MMAP) || defined(USE_WIN32_MMAP) > > #ifndef PROT_READ > diff --git a/strbuf.c b/strbuf.c > index 83caf4a..bd4c0d8 100644 > --- a/strbuf.c > +++ b/strbuf.c > @@ -1,15 +1,6 @@ > #include "cache.h" > #include "refs.h" > > -int starts_with(const char *str, const char *prefix) > -{ > - for (; ; str++, prefix++) > - if (!*prefix) > - return 1; > - else if (*str != *prefix) > - return 0; > -} > - > int prefixcmp(const char *str, const char *prefix) > { > for (; ; str++, prefix++) -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html