summaryrefslogtreecommitdiff
path: root/soh/src/code/audio_load.c
diff options
context:
space:
mode:
Diffstat (limited to 'soh/src/code/audio_load.c')
-rw-r--r--soh/src/code/audio_load.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/soh/src/code/audio_load.c b/soh/src/code/audio_load.c
index 582cf3a1c..fcebb7104 100644
--- a/soh/src/code/audio_load.c
+++ b/soh/src/code/audio_load.c
@@ -1350,8 +1350,9 @@ void AudioLoad_Init(void* heap, size_t heapSize) {
// calloc: unassigned slots stay NULL for the guard in AudioLoad_SyncInitSeqPlayerInternal().
sequenceMap = calloc(sequenceMapSize + 0xF, sizeof(char*));
- gAudioContext.seqLoadStatus = malloc(sequenceMapSize);
- memset(gAudioContext.seqLoadStatus, 5, sequenceMapSize);
+ // SOH [Bugfix] Size to match sequenceMap (+ 0xF); custom ids can exceed sequenceMapSize.
+ gAudioContext.seqLoadStatus = malloc(sequenceMapSize + 0xF);
+ memset(gAudioContext.seqLoadStatus, 5, sequenceMapSize + 0xF);
for (size_t i = 0; i < seqListSize; i++) {
SequenceData sDat = ResourceMgr_LoadSeqByName(seqList[i]);
sequenceMap[sDat.seqNumber] = strdup(seqList[i]);