summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKacper Michajłow <kasper93@gmail.com>2024-05-04 00:13:50 +0200
committersfan5 <sfan5@live.de>2024-05-04 11:20:38 +0200
commit637bc6994f47337760a04419c329416d5ec2a23a (patch)
tree3f303e2b3f2a547c1b0f787f0e53948e490e8d9a
parent943a50b300a081bb223325295040846fe435a861 (diff)
downloadmpv-637bc6994f47337760a04419c329416d5ec2a23a.tar.bz2
mpv-637bc6994f47337760a04419c329416d5ec2a23a.tar.xz
f_decoder_wrapper: clear decoder info on deinit
It is not longer valid and may cause use-after-free if used after decoder itself is destroyed. Fixes: #14051
-rw-r--r--filters/f_decoder_wrapper.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/filters/f_decoder_wrapper.c b/filters/f_decoder_wrapper.c
index 7abe95116d..a99c27b7af 100644
--- a/filters/f_decoder_wrapper.c
+++ b/filters/f_decoder_wrapper.c
@@ -367,6 +367,8 @@ static void decf_destroy(struct mp_filter *f)
MP_DBG(f, "Uninit decoder.\n");
talloc_free(p->decoder->f);
p->decoder = NULL;
+ p->codec->decoder = NULL;
+ p->codec->decoder_desc = NULL;
}
decf_reset(f);