[FFmpeg-devel] [PATCH 2/2] lavf/qsv: suppress code scan complain
Zhong Li
zhong.li at intel.com
Thu May 24 11:34:33 EEST 2018
Suppress the complain "variables 'handle' is used but maybe
uninitialized".
Signed-off-by: Zhong Li <zhong.li at intel.com>
---
libavfilter/qsvvpp.c | 7 ++++++-
libavfilter/vf_deinterlace_qsv.c | 7 ++++++-
libavfilter/vf_scale_qsv.c | 7 ++++++-
3 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/libavfilter/qsvvpp.c b/libavfilter/qsvvpp.c
index 88c74d8..335b642 100644
--- a/libavfilter/qsvvpp.c
+++ b/libavfilter/qsvvpp.c
@@ -410,7 +410,7 @@ static int init_vpp_session(AVFilterContext *avctx, QSVVPPContext *s)
AVHWDeviceContext *device_ctx;
AVQSVDeviceContext *device_hwctx;
mfxHDL handle;
- mfxHandleType handle_type;
+ mfxHandleType handle_type = MFX_HANDLE_D3D9_DEVICE_MANAGER;
mfxVersion ver;
mfxIMPL impl;
int ret, i;
@@ -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 c9e76c6..7711089 100644
--- a/libavfilter/vf_deinterlace_qsv.c
+++ b/libavfilter/vf_deinterlace_qsv.c
@@ -178,7 +178,7 @@ static int init_out_session(AVFilterContext *ctx)
int opaque = !!(hw_frames_hwctx->frame_type & MFX_MEMTYPE_OPAQUE_FRAME);
mfxHDL handle = NULL;
- mfxHandleType handle_type;
+ mfxHandleType handle_type = MFX_HANDLE_D3D9_DEVICE_MANAGER;
mfxVersion ver;
mfxIMPL impl;
mfxVideoParam par;
@@ -202,6 +202,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 d118994..1cb3401 100644
--- a/libavfilter/vf_scale_qsv.c
+++ b/libavfilter/vf_scale_qsv.c
@@ -278,7 +278,7 @@ static int init_out_session(AVFilterContext *ctx)
int opaque = !!(in_frames_hwctx->frame_type & MFX_MEMTYPE_OPAQUE_FRAME);
mfxHDL handle = NULL;
- mfxHandleType handle_type;
+ mfxHandleType handle_type = MFX_HANDLE_D3D9_DEVICE_MANAGER;
mfxVersion ver;
mfxIMPL impl;
mfxVideoParam par;
@@ -302,6 +302,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);
--
1.8.3.1
More information about the ffmpeg-devel
mailing list