From bff1d0c6587243369f12c575f5dcb20d6e7e910b Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Mon, 24 Aug 2020 23:03:45 +0200 Subject: avfilter/af_headphone: Avoid duplicating string needlessly The string given by an AVOption that contains the channel assignment is used only once; ergo it doesn't matter that parsing the string via av_strtok() is destructive. There is no need to make a copy. Reviewed-by: Paul B Mahol Signed-off-by: Andreas Rheinhardt --- libavfilter/af_headphone.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'libavfilter') diff --git a/libavfilter/af_headphone.c b/libavfilter/af_headphone.c index 32939af854..967f8ed5a6 100644 --- a/libavfilter/af_headphone.c +++ b/libavfilter/af_headphone.c @@ -100,16 +100,13 @@ static int parse_channel_name(const char *arg, uint64_t *rchannel) static void parse_map(AVFilterContext *ctx) { HeadphoneContext *s = ctx->priv; - char *arg, *tokenizer, *p, *args = av_strdup(s->map); + char *arg, *tokenizer, *p; uint64_t used_channels = 0; - if (!args) - return; - p = args; - s->lfe_channel = -1; s->nb_inputs = 1; + p = s->map; while ((arg = av_strtok(p, "|", &tokenizer))) { uint64_t out_channel; @@ -133,8 +130,6 @@ static void parse_map(AVFilterContext *ctx) s->nb_inputs = 2; else s->nb_inputs = s->nb_irs + 1; - - av_free(args); } typedef struct ThreadData { -- cgit v1.2.3