summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndré de la Rocha <andre.rocha@qt.io>2022-05-31 01:34:21 +0200
committerAndré de la Rocha <andre.rocha@qt.io>2022-05-31 18:36:53 +0200
commitcf3cbfb0e057c8889a55092fef85ea3bf1b554d8 (patch)
tree17b479c7a72b898ea24873b68158572f0935e240
parent33c68876d4fd5bda2e602ac1ff70cecfcc87544c (diff)
Windows: fix media player position while rewinding
Fixes: QTBUG-103853 Change-Id: I606dbc06d3aa46d6b75d5189c3125cf789e5fda5 Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit 54ee3fb7dadbd91d5eb322b635bece5b2b055fba)
-rw-r--r--src/multimedia/platform/windows/player/mfplayersession.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/multimedia/platform/windows/player/mfplayersession.cpp b/src/multimedia/platform/windows/player/mfplayersession.cpp
index 7507af928..29721c1c8 100644
--- a/src/multimedia/platform/windows/player/mfplayersession.cpp
+++ b/src/multimedia/platform/windows/player/mfplayersession.cpp
@@ -1224,11 +1224,13 @@ qint64 MFPlayerSession::position()
if (FAILED(m_presentationClock->GetCorrelatedTime(0, &time, &sysTime)))
return m_position / 10000;
- if (time > 0 && qint64(time) < m_lastSeekPos)
- m_altTiming = true;
+ if (m_state.rate > 0) {
+ if (time > 0 && qint64(time) < m_lastSeekPos)
+ m_altTiming = true;
- if (m_altTiming)
- return (m_lastSeekPos + MFGetSystemTime() - m_lastSeekSysTime) / 10000;
+ if (m_altTiming)
+ return (m_lastSeekPos + MFGetSystemTime() - m_lastSeekSysTime) / 10000;
+ }
return qint64(time / 10000);
}