Author: sagamusix
Date: Sat May 11 22:13:28 2024
New Revision: 20763
URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=20763
Log:
Merged revision(s) 20742 from trunk/OpenMPT:
[Fix] ULT: Strings are space-padded, not null-terminated.
........
Modified:
branches/OpenMPT-1.30/ (props changed)
branches/OpenMPT-1.30/soundlib/Load_ult.cpp
Modified: branches/OpenMPT-1.30/soundlib/Load_ult.cpp
==============================================================================
--- branches/OpenMPT-1.30/soundlib/Load_ult.cpp Sat May 11 22:11:21 2024 (r20762)
+++ branches/OpenMPT-1.30/soundlib/Load_ult.cpp Sat May 11 22:13:28 2024 (r20763)
@@ -18,7 +18,7 @@
{
char signature[14]; // "MAS_UTrack_V00"
uint8 version; // '1'...'4'
- char songName[32]; // Song Name, not guaranteed to be null-terminated
+ char songName[32]; // Song Name, space-padded
uint8 messageLength; // Number of Lines
};
@@ -51,7 +51,7 @@
mptSmp.Initialize();
mptSmp.Set16BitCuePoints();
- mptSmp.filename = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, filename);
+ mptSmp.filename = mpt::String::ReadBuf(mpt::String::spacePadded, filename);
if(sizeEnd <= sizeStart)
{
@@ -408,7 +408,7 @@
}
InitializeGlobals(MOD_TYPE_ULT);
- m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.songName);
+ m_songName = mpt::String::ReadBuf(mpt::String::spacePadded, fileHeader.songName);
const mpt::uchar *versions[] = {UL_("<1.4"), UL_("1.4"), UL_("1.5"), UL_("1.6")};
m_modFormat.formatName = U_("UltraTracker");
@@ -442,7 +442,7 @@
}
sampleHeader.ConvertToMPT(Samples[smp]);
- m_szNames[smp] = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, sampleHeader.name);
+ m_szNames[smp] = mpt::String::ReadBuf(mpt::String::spacePadded, sampleHeader.name);
}
ReadOrderFromFile<uint8>(Order(), file, 256, 0xFF, 0xFE);
|