diff --git a/panda/src/audio/audio_manager.cxx b/panda/src/audio/audio_manager.cxx index 6851d4c00e..694913a568 100644 --- a/panda/src/audio/audio_manager.cxx +++ b/panda/src/audio/audio_manager.cxx @@ -15,6 +15,16 @@ mutex AudioManager::_manager_mutex; bool* AudioManager::_quit = (bool*)0L; thread* AudioManager::_spawned = (thread*)0L; +//////////////////////////////////////////////////////////////////// +// Function: AudioManager::destructor +// Access: Public +// Description: delete the AudioManager singleton +//////////////////////////////////////////////////////////////////// +AudioManager::~AudioManager(void) { + shutdown(); + _global_ptr = (AudioManager*)0L; +} + //////////////////////////////////////////////////////////////////// // Function: AudioManager::set_update_func // Access: Public, Static diff --git a/panda/src/audio/audio_manager.h b/panda/src/audio/audio_manager.h index 3b596c9b0d..c2c10a35e6 100644 --- a/panda/src/audio/audio_manager.h +++ b/panda/src/audio/audio_manager.h @@ -36,6 +36,8 @@ private: static bool* _quit; static thread* _spawned; public: + virtual ~AudioManager(void); + static void set_update_func(UpdateFunc*); static void set_shutdown_func(ShutdownFunc*);