From: René Scharfe Date: Fri, 7 Jul 2023 19:08:33 +0000 (+0200) Subject: pretty: use strchr(3) in userformat_find_requirements() X-Git-Tag: v2.42.0-rc0~52^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bd19ee9c459b2d7872a8e486fd9c2f1b17d662a5;p=thirdparty%2Fgit.git pretty: use strchr(3) in userformat_find_requirements() The strbuf_expand_step() loop in userformat_find_requirements() iterates through the percent signs in the string "fmt", but we're not interested in its effect on the strbuf "dummy". Use strchr(3) instead and get rid of the strbuf that we no longer need. Suggested-by: Jeff King Signed-off-by: René Scharfe Signed-off-by: Junio C Hamano --- diff --git a/pretty.c b/pretty.c index 4c08f9856b..51ee7a5f12 100644 --- a/pretty.c +++ b/pretty.c @@ -1873,14 +1873,13 @@ static size_t format_commit_item(struct strbuf *sb, /* in UTF-8 */ void userformat_find_requirements(const char *fmt, struct userformat_want *w) { - struct strbuf dummy = STRBUF_INIT; - if (!fmt) { if (!user_format) return; fmt = user_format; } - while (strbuf_expand_step(&dummy, &fmt)) { + while ((fmt = strchr(fmt, '%'))) { + fmt++; if (skip_prefix(fmt, "%", &fmt)) continue; @@ -1900,7 +1899,6 @@ void userformat_find_requirements(const char *fmt, struct userformat_want *w) break; } } - strbuf_release(&dummy); } void repo_format_commit_message(struct repository *r,