summaryrefslogtreecommitdiffstats
path: root/src/engine/enginebuffer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/enginebuffer.cpp')
-rw-r--r--src/engine/enginebuffer.cpp8
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()