]> git.sesse.net Git - stockfish/blobdiff - src/application.cpp
Do not call exit_threads() in Application d'tor
[stockfish] / src / application.cpp
index 31e12a9babd122419dc2f032000fa4275db8f6d9..2d7a10bb01fd737407ed9942f08b7bacca08b0ff 100644 (file)
@@ -57,12 +57,6 @@ Application::Application() {
         genrand_int32();
 }
 
-Application::~Application() {
-
-  exit_threads();
-  quit_eval();
-}
-
 void Application::initialize() {
 
   // A static Application object is allocated
@@ -70,7 +64,15 @@ void Application::initialize() {
   static Application singleton;
 }
 
+void Application::free_resources() {
+
+  // Warning, following functions reference global objects that
+  // must be still alive when free_resources() is called.
+  exit_threads();
+  quit_eval();
+}
+
 void Application::exit_with_failure() {
 
-  exit(EXIT_FAILURE); // d'tor will be called automatically
+  exit(EXIT_FAILURE);
 }