mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avutil/dict: Deduplicate freeing dictionary
Reviewed-by: epirat07@gmail.com Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
6cf904ac3d
commit
dfffe03755
@ -145,11 +145,8 @@ int av_dict_set(AVDictionary **pm, const char *key, const char *value,
|
||||
m->elems[m->count].value = copy_value;
|
||||
m->count++;
|
||||
} else {
|
||||
if (!m->count) {
|
||||
av_freep(&m->elems);
|
||||
av_freep(pm);
|
||||
}
|
||||
av_freep(©_key);
|
||||
err = 0;
|
||||
goto end;
|
||||
}
|
||||
|
||||
return 0;
|
||||
@ -157,12 +154,13 @@ int av_dict_set(AVDictionary **pm, const char *key, const char *value,
|
||||
enomem:
|
||||
err = AVERROR(ENOMEM);
|
||||
err_out:
|
||||
av_free(copy_value);
|
||||
end:
|
||||
if (m && !m->count) {
|
||||
av_freep(&m->elems);
|
||||
av_freep(pm);
|
||||
}
|
||||
av_free(copy_key);
|
||||
av_free(copy_value);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user