diff options
Diffstat (limited to 'src/engine/enginebuffer.cpp')
-rw-r--r-- | src/engine/enginebuffer.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/engine/enginebuffer.cpp b/src/engine/enginebuffer.cpp index 4e631276ac..57962459de 100644 --- a/src/engine/enginebuffer.cpp +++ b/src/engine/enginebuffer.cpp @@ -616,7 +616,7 @@ void EngineBuffer::doSeekPlayPos(double new_playpos, enum SeekRequest seekType) queueNewPlaypos(new_playpos, seekType); } -bool EngineBuffer::updateIndicatorsAndModifyPlay(bool newPlay) { +bool EngineBuffer::updateIndicatorsAndModifyPlay(bool newPlay, bool oldPlay) { // If no track is currently loaded, turn play off. If a track is loading // allow the set since it might apply to a track we are loading due to the // asynchrony. @@ -629,12 +629,12 @@ bool EngineBuffer::updateIndicatorsAndModifyPlay(bool newPlay) { playPossible = false; } - return m_pCueControl->updateIndicatorsAndModifyPlay(newPlay, playPossible); + return m_pCueControl->updateIndicatorsAndModifyPlay(newPlay, oldPlay, playPossible); } void EngineBuffer::verifyPlay() { bool play = m_playButton->toBool(); - bool verifiedPlay = updateIndicatorsAndModifyPlay(play); + bool verifiedPlay = updateIndicatorsAndModifyPlay(play, play); if (play != verifiedPlay) { m_playButton->setAndConfirm(verifiedPlay ? 1.0 : 0.0); } @@ -642,7 +642,7 @@ void EngineBuffer::verifyPlay() { void EngineBuffer::slotControlPlayRequest(double v) { bool oldPlay = m_playButton->toBool(); - bool verifiedPlay = updateIndicatorsAndModifyPlay(v > 0.0); + bool verifiedPlay = updateIndicatorsAndModifyPlay(v > 0.0, oldPlay); if (!oldPlay && verifiedPlay) { if (m_pQuantize->toBool() |