diff --git a/libavcodec/qsv.c b/libavcodec/qsv.c index 7816d2f93c..6e3154e1a3 100644 --- a/libavcodec/qsv.c +++ b/libavcodec/qsv.c @@ -361,6 +361,7 @@ static int ff_qsv_set_display_handle(AVCodecContext *avctx, QSVSession *qs) av_dict_set(&child_device_opts, "driver", "iHD", 0); ret = av_hwdevice_ctx_create(&qs->va_device_ref, AV_HWDEVICE_TYPE_VAAPI, NULL, child_device_opts, 0); + av_dict_free(&child_device_opts); if (ret < 0) { av_log(avctx, AV_LOG_ERROR, "Failed to create a VAAPI device.\n"); return ret; @@ -375,8 +376,6 @@ static int ff_qsv_set_display_handle(AVCodecContext *avctx, QSVSession *qs) } } - av_dict_free(&child_device_opts); - return 0; } #endif //AVCODEC_QSV_LINUX_SESSION_HANDLE