diff options
author | Zhong Li <zhong.li@intel.com> | 2018-08-15 17:39:33 +0800 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2018-08-23 08:22:34 +0200 |
commit | e05e5920a4e1f1f15cc8a7c843159d519f6ec18e (patch) | |
tree | 5540e7bcea82310d810a145dcd7e8e5efcfa19cd | |
parent | 662558f985f50834eebe82d6b6854c66f33ab320 (diff) | |
download | ffmpeg-e05e5920a4e1f1f15cc8a7c843159d519f6ec18e.tar.gz |
qsv: Error out if getting session handle failed in avfilter
Solve some issues found by an automated code scansion.
Suppress the complain "variables 'handle' is used but maybe
uninitialized".
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-rw-r--r-- | libavfilter/qsvvpp.c | 5 | ||||
-rw-r--r-- | libavfilter/vf_deinterlace_qsv.c | 5 | ||||
-rw-r--r-- | libavfilter/vf_scale_qsv.c | 5 |
3 files changed, 15 insertions, 0 deletions
diff --git a/libavfilter/qsvvpp.c b/libavfilter/qsvvpp.c index f704517aee..75966b352d 100644 --- a/libavfilter/qsvvpp.c +++ b/libavfilter/qsvvpp.c @@ -503,6 +503,11 @@ static int init_vpp_session(AVFilterContext *avctx, QSVVPPContext *s) } } + if (ret != MFX_ERR_NONE) { + av_log(avctx, AV_LOG_ERROR, "Error getting the session handle\n"); + return AVERROR_UNKNOWN; + } + /* create a "slave" session with those same properties, to be used for vpp */ ret = MFXInit(impl, &ver, &s->session); if (ret != MFX_ERR_NONE) { diff --git a/libavfilter/vf_deinterlace_qsv.c b/libavfilter/vf_deinterlace_qsv.c index bb26a4dbfe..b659d424be 100644 --- a/libavfilter/vf_deinterlace_qsv.c +++ b/libavfilter/vf_deinterlace_qsv.c @@ -201,6 +201,11 @@ static int init_out_session(AVFilterContext *ctx) } } + if (err != MFX_ERR_NONE) { + av_log(ctx, AV_LOG_ERROR, "Error getting the session handle\n"); + return AVERROR_UNKNOWN; + } + /* create a "slave" session with those same properties, to be used for * actual deinterlacing */ err = MFXInit(impl, &ver, &s->session); diff --git a/libavfilter/vf_scale_qsv.c b/libavfilter/vf_scale_qsv.c index 381844cdc4..e9bfff867d 100644 --- a/libavfilter/vf_scale_qsv.c +++ b/libavfilter/vf_scale_qsv.c @@ -300,6 +300,11 @@ static int init_out_session(AVFilterContext *ctx) } } + if (err != MFX_ERR_NONE) { + av_log(ctx, AV_LOG_ERROR, "Error getting the session handle\n"); + return AVERROR_UNKNOWN; + } + /* create a "slave" session with those same properties, to be used for * actual scaling */ err = MFXInit(impl, &ver, &s->session); |