[vlc-devel] [PATCH 2/4] avcodec: use config_ChainDestroy to simplify the code
Zhao Zhili
quinkblack at foxmail.com
Thu Oct 1 18:47:24 CEST 2020
---
modules/codec/avcodec/avcommon.h | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/modules/codec/avcodec/avcommon.h b/modules/codec/avcodec/avcommon.h
index 6d88f12d72..d9f46d577c 100644
--- a/modules/codec/avcodec/avcommon.h
+++ b/modules/codec/avcodec/avcommon.h
@@ -66,14 +66,11 @@ static inline void vlc_av_get_options(const char *psz_opts, AVDictionary** pp_di
{
config_chain_t *cfg = NULL;
config_ChainParseOptions(&cfg, psz_opts);
- while (cfg) {
- config_chain_t *next = cfg->p_next;
- av_dict_set(pp_dict, cfg->psz_name, cfg->psz_value, 0);
- free(cfg->psz_name);
- free(cfg->psz_value);
- free(cfg);
- cfg = next;
+ for (config_chain_t *item = cfg; item != NULL; item = item->p_next) {
+ av_dict_set(pp_dict, item->psz_name, item->psz_value, 0);
}
+ if (cfg)
+ config_ChainDestroy(cfg);
}
static inline void vlc_init_avutil(vlc_object_t *obj)
--
2.25.1
More information about the vlc-devel
mailing list