diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 6137811d..5cc9b8fc 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -50,8 +50,14 @@ if (UNIX)
   )
 endif()
 
+# Some unittest fail for dubious reason on Ubuntu Xenial with TSAN
+if (MAC OR WIN32)
+  list(APPEND SOURCES
+    IXWebSocketMessageQTest.cpp
+  )
+endif()
+
 # Disable tests for now that are failing or not reliable
-# IXWebSocketMessageQTest.cpp (trigger a segfault on Linux)
 
 add_executable(ixwebsocket_unittest ${SOURCES})
 
diff --git a/test/IXWebSocketMessageQTest.cpp b/test/IXWebSocketMessageQTest.cpp
index 034a2ac0..739155ef 100644
--- a/test/IXWebSocketMessageQTest.cpp
+++ b/test/IXWebSocketMessageQTest.cpp
@@ -186,6 +186,8 @@ TEST_CASE("Websocket_message_queue", "[websocket_message_q]")
         MsgQTestClient testClient;
         testClient.run("ws://127.0.0.1:" + std::to_string(port));
         REQUIRE(testClient.isSucceeded());
+
+        server.stop();
     }
 
 }