From: <sag...@us...> - 2011-05-27 18:11:39
|
Revision: 885 http://modplug.svn.sourceforge.net/modplug/?rev=885&view=rev Author: saga-games Date: 2011-05-27 18:11:33 +0000 (Fri, 27 May 2011) Log Message: ----------- [Fix] When using the pattern play controls (f.e. "Replay Pattern") on a pattern that isn't played in the normal play sequence, tempo and global volume commands on the first played row are not ignored anymore. Modified Paths: -------------- trunk/OpenMPT/mptrack/Moddoc.cpp Modified: trunk/OpenMPT/mptrack/Moddoc.cpp =================================================================== --- trunk/OpenMPT/mptrack/Moddoc.cpp 2011-05-26 23:22:39 UTC (rev 884) +++ trunk/OpenMPT/mptrack/Moddoc.cpp 2011-05-27 18:11:33 UTC (rev 885) @@ -3391,6 +3391,9 @@ BEGIN_CRITICAL(); + // set playback timer in the status bar (and update channel status) + SetElapsedTime(nOrd, 0); + // Cut instruments/samples for (UINT i=0; i<MAX_CHANNELS; i++) { @@ -3413,9 +3416,6 @@ //end rewbs.vstCompliance END_CRITICAL(); - // set playback timer in the status bar - SetElapsedTime(nOrd, 0); - if (pModPlaying != this) { pMainFrm->PlayMod(this, followSonghWnd, m_dwNotifyType|MPTNOTIFY_POSITION|MPTNOTIFY_VUMETERS); //rewbs.fix2977 @@ -3450,6 +3450,10 @@ CModDoc *pModPlaying = pMainFrm->GetModPlaying(); BEGIN_CRITICAL(); + + // set playback timer in the status bar (and update channel status) + SetElapsedTime(nOrd, nRow); + // Cut instruments/samples for (UINT i=pSndFile->m_nChannels; i<MAX_CHANNELS; i++) { @@ -3468,9 +3472,6 @@ //end rewbs.VSTCompliance END_CRITICAL(); - // set playback timer in the status bar - SetElapsedTime(nOrd, nRow); - if (pModPlaying != this) { pMainFrm->PlayMod(this, followSonghWnd, m_dwNotifyType|MPTNOTIFY_POSITION|MPTNOTIFY_VUMETERS); //rewbs.fix2977 } @@ -3505,6 +3506,10 @@ CModDoc *pModPlaying = pMainFrm->GetModPlaying(); BEGIN_CRITICAL(); + + // set playback timer in the status bar (and update channel status) + SetElapsedTime(nOrd, nRow); + // Cut instruments/samples for (UINT i=pSndFile->m_nChannels; i<MAX_CHANNELS; i++) { @@ -3526,9 +3531,6 @@ //rewbs.VSTCompliance END_CRITICAL(); - // set playback timer in the status bar - SetElapsedTime(nOrd, nRow); - if (pModPlaying != this) { pMainFrm->PlayMod(this, followSonghWnd, m_dwNotifyType|MPTNOTIFY_POSITION|MPTNOTIFY_VUMETERS); //rewbs.fix2977 @@ -3751,7 +3753,7 @@ bShowLog = true; } - UINT nNewChannels = CLAMP(dlg.m_nChannels, m_SndFile.GetModSpecifications().channelsMin, m_SndFile.GetModSpecifications().channelsMax); + CHANNELINDEX nNewChannels = CLAMP(dlg.m_nChannels, m_SndFile.GetModSpecifications().channelsMin, m_SndFile.GetModSpecifications().channelsMax); if (nNewChannels != GetSoundFile()->GetNumChannels()) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |