From: Junio C Hamano <gitster@xxxxxxxxx> > > Christian Couder <chriscool@xxxxxxxxxxxxx> writes: > >> diff --git a/wrapper.c b/wrapper.c >> index 0cc5636..c46026a 100644 >> --- a/wrapper.c >> +++ b/wrapper.c >> @@ -455,3 +455,17 @@ struct passwd *xgetpwuid_self(void) >> errno ? strerror(errno) : _("no such user")); >> return pw; >> } >> + >> +void lowercase(char *p) >> +{ >> + for (; *p; p++) >> + *p = tolower(*p); >> +} >> + >> +char *xstrdup_tolower(const char *str) >> +{ >> + char *dup = xstrdup(str); >> + lowercase(dup); >> + return dup; >> +} >> + > > As a pure code-movement step, this may be OK, but I am not sure if > both of them want to be public functions in this shape. > > Perhaps > > char *downcase_copy(const char *str) > { > char *copy = xmalloc(strlen(str) + 1); > int i; > for (i = 0; str[i]; i++) > copy[i] = tolower(str[i]); > copy[i] = '\0'; > return copy; > } > > may avoid having to copy things twice. Yeah, but it seems a bit wasteful to allocate memory for a new string, then downcase it, then compare it with strcmp() and then free it, instead of just using strcasecmp() on the original string. > Do you need the other > function exposed? No, with the change you suggest, I don't. Thanks, Christian. -- 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