src/spacenav-demo-qt.cpp
branchv_0
changeset 2 21b0b2b0547e
parent 1 2a3e9f07c128
child 4 1383ad1c4f57
--- a/src/spacenav-demo-qt.cpp	Wed Mar 06 20:28:34 2019 +0100
+++ b/src/spacenav-demo-qt.cpp	Wed Mar 06 21:08:34 2019 +0100
@@ -19,6 +19,7 @@
 
 #include <QApplication>
 #include <QThread>
+#include <QMainWindow>
 
 #include <stdlib.h>
 #include <signal.h>
@@ -34,9 +35,19 @@
 
 	SpacenavReceiver t;
 	t.start();
-	
-	// SpacenavWindow w;
+
+	// QMainWindow w;
 	// w.show();
 
-	return app.exec();
+	int qtResultCode = app.exec();
+
+	if (t.isRunning()) {
+		std::wcerr << L"Background RelationalReader thread is still running → terminate()" << std::endl;
+		t.terminate();
+		std::wcerr << L"Background RelationalReader thread was terminated → wait()" << std::endl;
+		t.wait();
+		std::wcerr << L"Background RelationalReader thread wait() finished" << std::endl;
+	}
+
+	return qtResultCode;
 }