From: Jeff King Date: Tue, 26 Nov 2019 16:10:53 GMT Subject: Re: [PATCH] fmt-merge-msg: use skip_prefix() instead of starts_with() Message-ID: <20191126161053.GE25729@sigill.intra.peff.net> In-Reply-To: <8fa33928-3cbc-beba-524b-55bca143fd80@web.de> On Tue, Nov 26, 2019 at 03:22:56PM +0100, René Scharfe wrote: > diff --git a/builtin/fmt-merge-msg.c b/builtin/fmt-merge-msg.c > index a4615587fd..736f666f64 100644 > --- a/builtin/fmt-merge-msg.c > +++ b/builtin/fmt-merge-msg.c > @@ -106,7 +106,7 @@ static int handle_line(char *line, struct merge_parents *merge_parents) > int i, len = strlen(line); > struct origin_data *origin_data; > char *src; > - const char *origin; > + const char *origin, *tag_name; > struct src_data *src_data; > struct string_list_item *item; > int pulling_head = 0; > @@ -162,14 +162,13 @@ static int handle_line(char *line, struct merge_parents *merge_parents) > if (pulling_head) { > origin = src; > src_data->head_status |= 1; > - } else if (starts_with(line, "branch ")) { > + } else if (skip_prefix(line, "branch ", &origin)) { > origin_data->is_local_branch = 1; > - origin = line + 7; > string_list_append(&src_data->branch, origin); > src_data->head_status |= 2; > - } else if (starts_with(line, "tag ")) { > + } else if (skip_prefix(line, "tag ", &tag_name)) { > origin = line; > - string_list_append(&src_data->tag, origin + 4); > + string_list_append(&src_data->tag, tag_name); > src_data->head_status |= 2; Looks good, as we're already mutating "origin" in the first one, and "tag_name" is a new variable in the second one. -Peff