diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2015-08-26 19:46:19 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2015-08-26 19:46:19 +0000 |
| commit | 94de485531c7bbb04f577c9ad0e9e0dbb8a55ae6 (patch) | |
| tree | aefb20b55128e2028e4c9dce349a242f3d69c10e /src | |
| parent | a99c6a4984639286f5cfca79f0140e4c466d8ba0 (diff) | |
| download | qmmp-94de485531c7bbb04f577c9ad0e9e0dbb8a55ae6.tar.gz qmmp-94de485531c7bbb04f577c9ad0e9e0dbb8a55ae6.tar.bz2 qmmp-94de485531c7bbb04f577c9ad0e9e0dbb8a55ae6.zip | |
lock mutext before reset of elapsed time counter
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@5497 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src')
| -rw-r--r-- | src/qmmp/qmmpaudioengine.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/qmmp/qmmpaudioengine.cpp b/src/qmmp/qmmpaudioengine.cpp index d34d42b51..6d76ff591 100644 --- a/src/qmmp/qmmpaudioengine.cpp +++ b/src/qmmp/qmmpaudioengine.cpp @@ -412,12 +412,14 @@ void QmmpAudioEngine::run() StateHandler::instance()->sendFinished(); StateHandler::instance()->dispatch(Qmmp::Stopped); //fake stop/start cycle StateHandler::instance()->dispatch(Qmmp::Buffering); - StateHandler::instance()->dispatch(Qmmp::Playing); m_decoder->next(); StateHandler::instance()->dispatch(m_decoder->totalTime()); m_replayGain->setReplayGainInfo(m_decoder->replayGainInfo(), m_decoder->hasHeadroom()); + m_output->mutex()->lock(); m_output->seek(0); //reset counter + m_output->mutex()->unlock(); addOffset(); //offset + StateHandler::instance()->dispatch(Qmmp::Playing); mutex()->unlock(); continue; } @@ -435,9 +437,11 @@ void QmmpAudioEngine::run() StateHandler::instance()->sendFinished(); StateHandler::instance()->dispatch(Qmmp::Stopped); //fake stop/start cycle StateHandler::instance()->dispatch(Qmmp::Buffering); - StateHandler::instance()->dispatch(Qmmp::Playing); StateHandler::instance()->dispatch(m_decoder->totalTime()); + m_output->mutex()->lock(); m_output->seek(0); //reset counter + m_output->mutex()->unlock(); + StateHandler::instance()->dispatch(Qmmp::Playing); mutex()->unlock(); sendMetaData(); addOffset(); //offset |
