diff options
author | Andreas Haas <liu.gam3@gmail.com> | 2017-04-10 19:41:27 +0200 |
---|---|---|
committer | Andreas Haas <liu.gam3@gmail.com> | 2017-04-10 19:51:07 +0200 |
commit | 246dfc65ca22339a9092b07cd0af51a2ed9ac1f3 (patch) | |
tree | a037d1e542b2e17f98ddffde4d6c5bfa7bf38d50 | |
parent | 551e64728f926f1f1ed558d930beead674ededc7 (diff) |
Fix crash on exit.
First it crashed in the thread that checks for android devices, then in the audio driver.
-rw-r--r-- | platform/android/export/export.cpp | 7 | ||||
-rw-r--r-- | servers/audio_server.cpp | 4 |
2 files changed, 11 insertions, 0 deletions
diff --git a/platform/android/export/export.cpp b/platform/android/export/export.cpp index 78c28ede50..72d665329e 100644 --- a/platform/android/export/export.cpp +++ b/platform/android/export/export.cpp @@ -3532,6 +3532,13 @@ public: devices_changed = true; quit_request = false; } + + ~EditorExportAndroid() { + quit_request = true; + Thread::wait_to_finish(device_thread); + memdelete(device_lock); + memdelete(device_thread); + } }; void register_android_exporter() { diff --git a/servers/audio_server.cpp b/servers/audio_server.cpp index 1b1ed45862..f3bba4ae90 100644 --- a/servers/audio_server.cpp +++ b/servers/audio_server.cpp @@ -761,6 +761,10 @@ void AudioServer::finish() { } buses.clear(); + + if (AudioDriver::get_singleton()) { + AudioDriver::get_singleton()->finish(); + } } void AudioServer::update() { } |