diff options
author | wm4 <wm4@nowhere> | 2013-12-22 12:18:01 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-12-22 12:18:01 +0100 |
commit | bd5e0a2ba29cf666db474cd9e85dbef1bff050a7 (patch) | |
tree | 6f1d1c5fc2d20180d4c843afb73dd6e18f3d8868 | |
parent | 4833e92b545860b545e161ec9aa0b3c38c7a9475 (diff) | |
download | mpv-bd5e0a2ba29cf666db474cd9e85dbef1bff050a7.tar.bz2 mpv-bd5e0a2ba29cf666db474cd9e85dbef1bff050a7.tar.xz |
options: make --msglevel extend previous settings
Make it so --msglevel extends previous --msglevel uses, instead of
overwriting them. Do this by literally appending the --msglevel option
value to the previous one.
-rw-r--r-- | options/m_option.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/options/m_option.c b/options/m_option.c index 5b9654c744..5de59500f9 100644 --- a/options/m_option.c +++ b/options/m_option.c @@ -1335,9 +1335,16 @@ static int parse_msglevels(struct mp_log *log, const m_option_t *opt, } } - if (dst) { - talloc_free(VAL(dst)); - VAL(dst) = bstrdup0(NULL, param); + if (dst && param.len) { + char *prev = VAL(dst); + char *new; + if (prev && prev[0]) { + new = talloc_asprintf(NULL, "%s:%.*s", prev, BSTR_P(param)); + } else { + new = bstrdup0(NULL, param); + } + talloc_free(prev); + VAL(dst) = new; } return 1; |