diff options
author | Piotr Srebrny <piotr.srebrny@qt.io> | 2022-09-22 17:12:43 +0200 |
---|---|---|
committer | Piotr Srebrny <piotr.srebrny@qt.io> | 2022-09-28 15:07:24 +0200 |
commit | c75e74235eed6312a8b42cba4937e77d9148f1cb (patch) | |
tree | c7b3ca292fa3189d464fe17219fc00599e6a538d | |
parent | ba58c54180fe8dc9932c569c7caf4c3843dbade8 (diff) |
Ensure positive stride value
MFGetStrideForBitmapInfoHeader returns in some cases negative stride.
For example, the Y8 format gave the negative stride. This causes crash
as other parts of the rendering system cast it to unsigned value.
Change-Id: Idc6e8d1dd991a005acb0dbe2c3567c68ec5c7433
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
(cherry picked from commit af7c239a9d4facd8984d2f7c36df9f0948c47055)
-rw-r--r-- | src/multimedia/platform/windows/mediacapture/qwindowsmediadevicereader.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/multimedia/platform/windows/mediacapture/qwindowsmediadevicereader.cpp b/src/multimedia/platform/windows/mediacapture/qwindowsmediadevicereader.cpp index 16414cca5..6f11f6a54 100644 --- a/src/multimedia/platform/windows/mediacapture/qwindowsmediadevicereader.cpp +++ b/src/multimedia/platform/windows/mediacapture/qwindowsmediadevicereader.cpp @@ -246,7 +246,7 @@ HRESULT QWindowsMediaDeviceReader::prepareVideoStream(DWORD mediaTypeIndex) // and the stride, which we need to convert the frame later hr = MFGetStrideForBitmapInfoHeader(subtype.Data1, m_frameWidth, &m_stride); if (SUCCEEDED(hr)) { - + m_stride = qAbs(m_stride); UINT32 frameRateNum, frameRateDen; hr = MFGetAttributeRatio(m_videoMediaType, MF_MT_FRAME_RATE, &frameRateNum, &frameRateDen); if (SUCCEEDED(hr)) { |