@matheusbsbs / matheus-bagliano / commits / 7a9f8ca805
Fork 0

parse-options: simplify parse_options_dup()

Simplify parse_options_dup() by making it a trivial wrapper of parse_options_concat() by making use of the facts that the latter duplicates its input as well and that appending an empty set is a no-op. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>

René Scharfe committed Feb 9, 2020 at 16:58 UTC 7a9f8ca805045f5d6d59227c8cce5a3e6790b0ef
1 file changed +3 -9
parse-options-cb.c
+3 -9
@@ -170,15 +170,9 @@ static size_t parse_options_count(const struct option *opt)
170
171 struct option *parse_options_dup(const struct option *o)
172 {
173 - const struct option *orig = o;
174 - struct option *opts;
175 - size_t nr = parse_options_count(o);
176 -
177 - ALLOC_ARRAY(opts, nr + 1);
178 - COPY_ARRAY(opts, orig, nr);
179 - memset(opts + nr, 0, sizeof(*opts));
180 - opts[nr].type = OPTION_END;
181 - return opts;
173 + struct option no_options[] = { OPT_END() };
174 +
175 + return parse_options_concat(o, no_options);
176 }
177
178 struct option *parse_options_concat(const struct option *a,