From b934cf056e3875a13af48eefe519cffe1332cde2 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Thu, 8 Jun 2017 16:55:25 +0200 Subject: Prevent m_runningCount from eventually overflowing When m_loopCount is Infinite (i.e. -1) m_runningCount would go from -2 and down, eventuall wrapping and reaching 0 and thus stopping. This is a theorical problem since even if we had a 1 second video it would take lots of years to trigger but i guess it's better than having the value of m_runningCount be unbounded Change-Id: I340ec2157ece3334e58ab4afd77c34b478a256e9 Reviewed-by: Christian Stromme --- src/imports/multimedia/qdeclarativeaudio.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/imports/multimedia/qdeclarativeaudio.cpp b/src/imports/multimedia/qdeclarativeaudio.cpp index fc13323e8..652296509 100644 --- a/src/imports/multimedia/qdeclarativeaudio.cpp +++ b/src/imports/multimedia/qdeclarativeaudio.cpp @@ -900,7 +900,7 @@ void QDeclarativeAudio::componentComplete() void QDeclarativeAudio::_q_statusChanged() { if (m_player->mediaStatus() == QMediaPlayer::EndOfMedia && m_runningCount != 0) { - m_runningCount -= 1; + m_runningCount = std::max(m_runningCount - 1, -2); m_player->play(); } const QMediaPlayer::MediaStatus oldStatus = m_status; -- cgit v1.2.3