Browse Source

X11: Finalize audiodrivers on exit

The audiodrivers loaded by OS_X11 are not destroyed before the
audioserver is. This causes a segfault on exit.

The code is taken from os_windows.cpp which did have the cleanup code.
Hein-Pieter van Braam 8 years ago
parent
commit
a7fcdad16d
1 changed files with 4 additions and 1 deletions
  1. 4 1
      platform/x11/os_x11.cpp

+ 4 - 1
platform/x11/os_x11.cpp

@@ -464,7 +464,6 @@ void OS_X11::finalize() {
 		memdelete(main_loop);
 	main_loop=NULL;
 
-
 	/*
 	if (debugger_connection_console) {
 		memdelete(debugger_connection_console);
@@ -512,6 +511,10 @@ void OS_X11::finalize() {
 
 
 	args.clear();
+
+	for (int i = 0; i < get_audio_driver_count(); i++) {
+		AudioDriverManager::get_driver(i)->finish();
+	}
 }