From: <sag...@us...> - 2014-04-22 15:56:58
|
Revision: 4016 http://sourceforge.net/p/modplug/code/4016 Author: saga-games Date: 2014-04-22 15:56:51 +0000 (Tue, 22 Apr 2014) Log Message: ----------- [Fix] Sample tab: Creating a new sample didn't update the sample status in the tree view [Imp] WAV saving: When there's only a sustain loop, write an empty "normal" loop as well so that the sustain loop isn't loaded as a normal loop (like it was done in older versions). [Mod] OpenMPT: Version is now 1.23.01.03. Modified Paths: -------------- trunk/OpenMPT/common/versionNumber.h trunk/OpenMPT/mptrack/View_smp.cpp trunk/OpenMPT/soundlib/WAVTools.cpp Modified: trunk/OpenMPT/common/versionNumber.h =================================================================== --- trunk/OpenMPT/common/versionNumber.h 2014-04-22 15:55:21 UTC (rev 4015) +++ trunk/OpenMPT/common/versionNumber.h 2014-04-22 15:56:51 UTC (rev 4016) @@ -17,7 +17,7 @@ #define VER_MAJORMAJOR 1 #define VER_MAJOR 23 #define VER_MINOR 01 -#define VER_MINORMINOR 02 +#define VER_MINORMINOR 03 //Version string. For example "1.17.02.28" #define MPT_VERSION_STR VER_STRINGIZE(VER_MAJORMAJOR) "." VER_STRINGIZE(VER_MAJOR) "." VER_STRINGIZE(VER_MINOR) "." VER_STRINGIZE(VER_MINORMINOR) Modified: trunk/OpenMPT/mptrack/View_smp.cpp =================================================================== --- trunk/OpenMPT/mptrack/View_smp.cpp 2014-04-22 15:55:21 UTC (rev 4015) +++ trunk/OpenMPT/mptrack/View_smp.cpp 2014-04-22 15:56:51 UTC (rev 4016) @@ -2788,7 +2788,7 @@ if(nOldLength != sample.nLength) { SetCurSel(0, 0); - SetModified(HINT_SAMPLEDATA | HINT_SAMPLEINFO, true); + SetModified(HINT_SAMPLEDATA | HINT_SAMPLEINFO | HINT_SMPNAMES, true); } } Modified: trunk/OpenMPT/soundlib/WAVTools.cpp =================================================================== --- trunk/OpenMPT/soundlib/WAVTools.cpp 2014-04-22 15:55:21 UTC (rev 4015) +++ trunk/OpenMPT/soundlib/WAVTools.cpp 2014-04-22 15:56:51 UTC (rev 4016) @@ -554,11 +554,17 @@ if(sample.uFlags[CHN_LOOP]) { loops[info.numLoops++].ConvertToWAV(sample.nLoopStart, sample.nLoopEnd, sample.uFlags[CHN_PINGPONGLOOP]); + } else if(sample.uFlags[CHN_SUSTAINLOOP]) + { + // Since there are no "loop types" to distinguish between sustain and normal loops, OpenMPT assumes + // that the first loop is a sustain loop if there are two loops. If we only want a sustain loop, + // we will have to write a second bogus loop. + loops[info.numLoops++].ConvertToWAV(0, 0, false); } info.ConvertEndianness(); Write(info); - for(size_t i = 0; i < info.numLoops; i++) + for(uint32 i = 0; i < info.numLoops; i++) { loops[i].ConvertEndianness(); Write(loops[i]); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |