libswscale/utils.c: Fix bug #8255

Bug #8255 points out a double free error in libwscale/utils.c file.
The double free is because the pointer to cascaded_context of an
sw_context is not set to NULL after freeing it. When the sw_context
is later freed, sws_freeContext is called on the cascaded_context,
causing a double free.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Gautam Ramakrishnan 2020-02-10 00:03:09 +05:30 committed by Michael Niedermayer
parent 5c151e1491
commit da399e2135

View File

@ -1502,6 +1502,7 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter,
ff_free_filters(c2);
if (ff_init_filters(c2) < 0) {
sws_freeContext(c2);
c->cascaded_context[1] = NULL;
return -1;
}