Author: sagamusix
Date: Sat Jun 29 14:42:58 2024
New Revision: 21112
URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=21112
Log:
[Fix] Compile fix for libopenmpt test suite.
Modified:
trunk/OpenMPT/mptrack/MainFrm.cpp
trunk/OpenMPT/soundlib/Sndfile.cpp
trunk/OpenMPT/soundlib/Sndfile.h
trunk/OpenMPT/test/test.cpp
Modified: trunk/OpenMPT/mptrack/MainFrm.cpp
==============================================================================
--- trunk/OpenMPT/mptrack/MainFrm.cpp Sat Jun 29 14:12:55 2024 (r21111)
+++ trunk/OpenMPT/mptrack/MainFrm.cpp Sat Jun 29 14:42:58 2024 (r21112)
@@ -1683,11 +1683,9 @@
void CMainFrame::InitPreview()
{
m_WaveFile.Destroy();
- m_WaveFile.Create(FileReader());
+ m_WaveFile.Create(MOD_TYPE_MPT, 2);
m_WaveFile.Order().SetDefaultTempoInt(125);
m_WaveFile.Order().SetDefaultSpeed(6);
- m_WaveFile.ChangeModTypeTo(MOD_TYPE_MPT, false);
- m_WaveFile.ChnSettings.resize(2);
m_WaveFile.m_nInstruments = 1;
m_WaveFile.m_nTempoMode = TempoMode::Classic;
m_WaveFile.Order().assign(1, 0);
Modified: trunk/OpenMPT/soundlib/Sndfile.cpp
==============================================================================
--- trunk/OpenMPT/soundlib/Sndfile.cpp Sat Jun 29 14:12:55 2024 (r21111)
+++ trunk/OpenMPT/soundlib/Sndfile.cpp Sat Jun 29 14:42:58 2024 (r21112)
@@ -409,6 +409,14 @@
}
+void CSoundFile::Create(MODTYPE type, CHANNELINDEX numChannels, CModDoc *modDoc)
+{
+ Create(FileReader{}, CSoundFile::loadCompleteModule, modDoc);
+ SetType(type);
+ ChnSettings.resize(numChannels);
+}
+
+
bool CSoundFile::Create(FileReader file, ModLoadingFlags loadFlags, CModDoc *pModDoc)
{
m_nMixChannels = 0;
Modified: trunk/OpenMPT/soundlib/Sndfile.h
==============================================================================
--- trunk/OpenMPT/soundlib/Sndfile.h Sat Jun 29 14:12:55 2024 (r21111)
+++ trunk/OpenMPT/soundlib/Sndfile.h Sat Jun 29 14:42:58 2024 (r21112)
@@ -663,6 +663,7 @@
CModDoc *GetpModDoc() const noexcept { return m_pModDoc; }
#endif // MODPLUG_TRACKER
+ void Create(MODTYPE type, CHANNELINDEX numChannels, CModDoc *pModDoc = nullptr);
bool Create(FileReader file, ModLoadingFlags loadFlags = loadCompleteModule, CModDoc *pModDoc = nullptr);
private:
bool CreateInternal(FileReader file, ModLoadingFlags loadFlags);
Modified: trunk/OpenMPT/test/test.cpp
==============================================================================
--- trunk/OpenMPT/test/test.cpp Sat Jun 29 14:12:55 2024 (r21111)
+++ trunk/OpenMPT/test/test.cpp Sat Jun 29 14:42:58 2024 (r21112)
@@ -3857,9 +3857,7 @@
#ifdef MODPLUG_TRACKER
auto modDoc = static_cast<CModDoc *>(theApp.GetModDocTemplate()->CreateNewDocument());
auto &sndFile = modDoc->GetSoundFile();
- sndFile.Create(FileReader(), CSoundFile::loadCompleteModule, modDoc);
- sndFile.ChnSettings.resize(4);
- sndFile.ChangeModTypeTo(MOD_TYPE_MPT);
+ sndFile.Create(MOD_TYPE_MPT, 4, modDoc);
// Rearrange channels
sndFile.Patterns.ResizeArray(2);
@@ -4055,11 +4053,9 @@
static MPT_NOINLINE void TestPCnoteSerialization()
{
FileReader file;
- std::unique_ptr<CSoundFile> pSndFile = std::make_unique<CSoundFile>();
- CSoundFile &sndFile = *pSndFile.get();
- sndFile.ChangeModTypeTo(MOD_TYPE_MPT, false);
- sndFile.Patterns.DestroyPatterns();
- sndFile.ChnSettings.resize(ModSpecs::mptm.channelsMax);
+ mpt::heap_value<CSoundFile> pSndFile;
+ CSoundFile &sndFile = *pSndFile;
+ sndFile.Create(MOD_TYPE_MPT, ModSpecs::mptm.channelsMax);
sndFile.Patterns.Insert(0, ModSpecs::mptm.patternRowsMin);
sndFile.Patterns.Insert(1, 64);
|