SAGA2: Fix memory leaks in audio.cpp

This commit is contained in:
a/ 2021-08-22 20:22:05 +09:00
parent c019f49a5b
commit 713d3813b4

View File

@ -138,6 +138,34 @@ void startAudio(void) {
clickData[2] = (uint8 *)LoadResource(soundRes, MKTAG('C', 'L', 'K', 2), "Click 2");
}
void cleanupAudio() {
if (g_vm->_audio) {
delete g_vm->_audio;
g_vm->_audio = nullptr;
free(clickData[1]);
clickData[1] = nullptr;
free(clickData[2]);
clickData[2] = nullptr;
delete musicRes;
musicRes = nullptr;
delete soundRes;
soundRes = nullptr;
delete longRes;
longRes = nullptr;
delete loopRes;
loopRes = nullptr;
delete voiceRes;
voiceRes = nullptr;
}
}
//-----------------------------------------------------------------------
// audio event loop
@ -547,10 +575,6 @@ bool initAudio() {
return true;
}
void cleanupAudio() {
delete g_vm->_audio;
}
AudioInterface::AudioInterface() {
_music = nullptr;
_mixer = g_system->getMixer();