@matheusbsbs / matheus-bagliano / commits / ddc42ec786
Fork 0

name-rev: factor out get_parent_name()

Reduce nesting by moving code to come up with a name for the parent into its own function. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>

René Scharfe committed Feb 4, 2020 at 22:23 UTC ddc42ec786ab2b64ef70bbd1e456db423dae031e
1 file changed +14 -13
builtin/name-rev.c
+14 -13
@@ -101,6 +101,19 @@ static struct rev_name *create_or_update_name(struct commit *commit,
101 return name;
102 }
103
104 +static char *get_parent_name(const struct rev_name *name, int parent_number)
105 +{
106 + size_t len;
107 +
108 + strip_suffix(name->tip_name, "^0", &len);
109 + if (name->generation > 0)
110 + return xstrfmt("%.*s~%d^%d", (int)len, name->tip_name,
111 + name->generation, parent_number);
112 + else
113 + return xstrfmt("%.*s^%d", (int)len, name->tip_name,
114 + parent_number);
115 +}
116 +
117 static void name_rev(struct commit *start_commit,
118 const char *tip_name, timestamp_t taggerdate,
119 int from_tag, int deref)
@@ -148,19 +161,7 @@ static void name_rev(struct commit *start_commit,
161 continue;
162
163 if (parent_number > 1) {
151 - size_t len;
152 -
153 - strip_suffix(name->tip_name, "^0", &len);
154 - if (name->generation > 0)
155 - new_name = xstrfmt("%.*s~%d^%d",
156 - (int)len,
157 - name->tip_name,
158 - name->generation,
159 - parent_number);
160 - else
161 - new_name = xstrfmt("%.*s^%d", (int)len,
162 - name->tip_name,
163 - parent_number);
164 + new_name = get_parent_name(name, parent_number);
165 generation = 0;
166 distance = name->distance + MERGE_TRAVERSAL_WEIGHT;
167 } else {