mirror of
https://github.com/dhewm/dhewm3.git
synced 2025-01-22 01:01:12 +00:00
13ac657ebf
the problem was that the sources were still associated to it, because they get deleted after the listenerSlot: the sources get freed in idSoundSystemLocal::Shutdown() which is called by idCommonLocal::ShutdownGame() in line 3217, while the listenerSlot is deleted via idSessionLocal::Shutdown() -> delete sw/rw -> idSoundWorldLocal::~idSoundWorldLocal() -> idSoundWorldLocal::Shutdown() - and idSessionLocal::Shutdown() is called in idCommonLocal::ShutdownGame() line 3211, before the other. I'm not gonna mess with the order of deleting things in ShutdownGame(), but it's sufficient to unassociate the effect slot from the source when destroying the emitters in idSoundWorldLocal::Shutdown(), by adding a call for that to idSoundChannel::ALStop() - and destroying the emitters before deleting listenerSlot. Before this fix, with ALSOFT_LOGLEVEL=3 you got the following warning: (WW) Error generated on context 0x5578fce2a280, code 0xa004, "Deleting in-use effect slot 1" Thanks for openal-soft's KittyCat for pointing this out! |
||
---|---|---|
.. | ||
cm | ||
d3xp | ||
framework | ||
game | ||
idlib | ||
MayaImport | ||
renderer | ||
sound | ||
sys | ||
tools | ||
TypeInfo | ||
ui | ||
CMakeLists.txt | ||
config.h.in | ||
mmakefile.src |