Fixed sound crash in Windows.

This commit is contained in:
Stephen Anthony 2025-05-26 17:10:30 -02:30
parent bd607a37dc
commit a4bd8a562b
1 changed files with 10 additions and 6 deletions

View File

@ -52,14 +52,14 @@ SoundSDL::SoundSDL(OSystem& osystem, AudioSettings& audioSettings)
return;
}
// Reserve 8K for the audio buffer; seems to be enough on most systems
myBuffer.reserve(8_KB);
SDL_zero(mySpec);
if(!myAudioSettings.enabled() || !openDevice())
if(!myAudioSettings.enabled())
Logger::info("Sound disabled\n");
Logger::debug("SoundSDL::SoundSDL initialized");
// Reserve 8K for the audio buffer; seems to be enough on most systems
myBuffer.reserve(8_KB);
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -105,8 +105,11 @@ bool SoundSDL::openDevice()
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void SoundSDL::setEnabled(bool enable)
{
mute(!enable);
pause(!enable);
if(myIsInitializedFlag)
{
mute(!enable);
pause(!enable);
}
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -140,6 +143,7 @@ void SoundSDL::open(shared_ptr<AudioQueue> audioQueue,
// Adjust volume to that defined in settings
setVolume(myAudioSettings.volume());
// Initialize resampler; must be done after the sound device has opened
initResampler();
// Show some info