diff options
Diffstat (limited to 'src/audio/audio_seqplayer.c')
| -rw-r--r-- | src/audio/audio_seqplayer.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/audio/audio_seqplayer.c b/src/audio/audio_seqplayer.c index b49e7041..9ddaf70c 100644 --- a/src/audio/audio_seqplayer.c +++ b/src/audio/audio_seqplayer.c @@ -145,12 +145,14 @@ void AudioSeq_SeqLayerDisable(SequenceLayer* layer) { } void AudioSeq_SeqLayerFree(SequenceChannel* channel, s32 layerIndex) { - SequenceLayer* layer = channel->layers[layerIndex]; - - if (layer != NULL) { - AudioSeq_AudioListPushBack(&gLayerFreeList, &layer->listItem); - AudioSeq_SeqLayerDisable(layer); - channel->layers[layerIndex] = NULL; + if (layerIndex < 4) { + SequenceLayer* layer = channel->layers[layerIndex]; + + if (layer != NULL) { + AudioSeq_AudioListPushBack(&gLayerFreeList, &layer->listItem); + AudioSeq_SeqLayerDisable(layer); + channel->layers[layerIndex] = NULL; + } } } |
