|
From: <sag...@us...> - 2010-12-31 20:58:08
|
Revision: 779
http://modplug.svn.sourceforge.net/modplug/?rev=779&view=rev
Author: saga-games
Date: 2010-12-31 20:58:02 +0000 (Fri, 31 Dec 2010)
Log Message:
-----------
[Fix] Song Cleanup: Various sample/instrument rearranging functions broke PC Notes.
Modified Paths:
--------------
trunk/OpenMPT/mptrack/CleanupSong.cpp
Modified: trunk/OpenMPT/mptrack/CleanupSong.cpp
===================================================================
--- trunk/OpenMPT/mptrack/CleanupSong.cpp 2010-12-23 23:24:44 UTC (rev 778)
+++ trunk/OpenMPT/mptrack/CleanupSong.cpp 2010-12-31 20:58:02 UTC (rev 779)
@@ -554,7 +554,7 @@
UINT jmax = pSndFile->Patterns[nPat].GetNumRows() * pSndFile->GetNumChannels();
for (UINT j=0; j<jmax; j++, p++)
{
- if ((p->note) && (p->note <= NOTE_MAX))
+ if ((p->note) && (p->note <= NOTE_MAX) && (!p->IsPcNote()))
{
if ((p->instr) && (p->instr < MAX_INSTRUMENTS))
{
@@ -723,7 +723,7 @@
MODCOMMAND *m = pSndFile->Patterns[nPat];
for(UINT len = pSndFile->Patterns[nPat].GetNumRows() * pSndFile->GetNumChannels(); len; m++, len--)
{
- if(m->instr <= pSndFile->GetNumSamples()) m->instr = (BYTE)nSampleMap[m->instr];
+ if(!m->IsPcNote() && m->instr <= pSndFile->GetNumSamples()) m->instr = (BYTE)nSampleMap[m->instr];
}
}
}
@@ -831,7 +831,7 @@
UINT nLen = pSndFile->m_nChannels * pSndFile->Patterns[iPat].GetNumRows();
while (nLen--)
{
- if (p->instr)
+ if (p->instr && !p->IsPcNote())
{
for (UINT k=0; k<nSwap; k++)
{
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|