diff options
author | nicm <nicm> | 2014-01-09 13:51:57 +0000 |
---|---|---|
committer | nicm <nicm> | 2014-01-09 13:51:57 +0000 |
commit | 66829ee12e45656fccfe8879b7ac2f983d138b42 (patch) | |
tree | 44af67b7fdb528453b75fbcc92ea1ac4f4cde42f | |
parent | 1751da76d5fed929636633905be5f5cfa204844b (diff) | |
download | rtmux-66829ee12e45656fccfe8879b7ac2f983d138b42.tar.gz rtmux-66829ee12e45656fccfe8879b7ac2f983d138b42.tar.bz2 rtmux-66829ee12e45656fccfe8879b7ac2f983d138b42.zip |
Simplify args_set, from Tiago Cunha.
-rw-r--r-- | arguments.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/arguments.c b/arguments.c index e699834c..4a3f4579 100644 --- a/arguments.c +++ b/arguments.c @@ -205,19 +205,15 @@ args_set(struct args *args, u_char ch, const char *value) /* Replace existing argument. */ if ((entry = args_find(args, ch)) != NULL) { free(entry->value); - if (value != NULL) - entry->value = xstrdup(value); - else - entry->value = NULL; - return; + entry->value = NULL; + } else { + entry = xcalloc(1, sizeof *entry); + entry->flag = ch; + RB_INSERT(args_tree, &args->tree, entry); } - entry = xcalloc(1, sizeof *entry); - entry->flag = ch; if (value != NULL) entry->value = xstrdup(value); - - RB_INSERT(args_tree, &args->tree, entry); } /* Get argument value. Will be NULL if it isn't present. */ |