From: <sv...@op...> - 2024-06-29 12:43:10
|
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); |