intel-hybrid-driver/intel-hybrid-codec-driver-2.0.0-nullptr-fix.patch

22 lines
907 B
Diff
Raw Normal View History

diff --git a/src/vp9hdec/decode_hybrid_vp9.cpp b/src/vp9hdec/decode_hybrid_vp9.cpp
index 1baf339..7a086e2 100644
--- a/src/vp9hdec/decode_hybrid_vp9.cpp
+++ b/src/vp9hdec/decode_hybrid_vp9.cpp
@@ -3289,9 +3289,16 @@ VAStatus Intel_HybridVp9Decode_HostVldRenderCb (
// Reset padding flag of current frame and update surface dimension
surface = SURFACE(pMdfDecodeFrame->ucCurrIndex);
+ if ((surface == NULL) || (surface->private_data == NULL))
+ return VA_STATUS_ERROR_INVALID_PARAMETER;
+
pFrameSource = (INTEL_DECODE_HYBRID_VP9_MDF_FRAME_SOURCE *)(surface->private_data);
pCurrFrame = &(pFrameSource->Frame);
pFrameSource->bHasPadding = false;
+
+ if (pCurrFrame->pMdfSurface == NULL)
+ return VA_STATUS_ERROR_INVALID_PARAMETER;
+
pCurrFrame->pMdfSurface->SetSurfaceStateDimensions(
pMdfDecodeFrame->dwWidth,
pMdfDecodeFrame->dwHeight);