diff --git a/ext/libav/gstavvidenc.c b/ext/libav/gstavvidenc.c index 4f107c883b..b2c2458812 100644 --- a/ext/libav/gstavvidenc.c +++ b/ext/libav/gstavvidenc.c @@ -546,13 +546,16 @@ bad_input_fmt: oclass->in_plugin->name); goto close_codec; } +close_codec: { - close_codec: gst_ffmpeg_avcodec_close (ffmpegenc->context); if (avcodec_get_context_defaults3 (ffmpegenc->context, oclass->in_plugin) < 0) GST_DEBUG_OBJECT (ffmpegenc, "Failed to set context defaults"); - cleanup_stats_in: + goto cleanup_stats_in; + } +cleanup_stats_in: + { if (ffmpegenc->context->stats_in) g_free (ffmpegenc->context->stats_in); return FALSE;