summaryrefslogtreecommitdiff
path: root/parse-options-cb.c
diff options
context:
space:
mode:
Diffstat (limited to 'parse-options-cb.c')
-rw-r--r--parse-options-cb.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/parse-options-cb.c b/parse-options-cb.c
index 7d56681..a28b55b 100644
--- a/parse-options-cb.c
+++ b/parse-options-cb.c
@@ -170,15 +170,9 @@ static size_t parse_options_count(const struct option *opt)
struct option *parse_options_dup(const struct option *o)
{
- const struct option *orig = o;
- struct option *opts;
- size_t nr = parse_options_count(o);
-
- ALLOC_ARRAY(opts, nr + 1);
- COPY_ARRAY(opts, orig, nr);
- memset(opts + nr, 0, sizeof(*opts));
- opts[nr].type = OPTION_END;
- return opts;
+ struct option no_options[] = { OPT_END() };
+
+ return parse_options_concat(o, no_options);
}
struct option *parse_options_concat(const struct option *a,