summaryrefslogtreecommitdiff
path: root/test/client_server_test.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2017-05-27 00:00:29 +0100
committerCarl Hetherington <cth@carlh.net>2017-05-27 00:00:29 +0100
commit676751fcd38bee7a687bba027e2fd6eb44446dec (patch)
treea0ec0eae36dffce159c85a0912abb79f9acbcc13 /test/client_server_test.cc
parentdd133fd1d81f943455cd8dd20cfb6018c63e673f (diff)
Fix leaked threads in client-server test.
Diffstat (limited to 'test/client_server_test.cc')
-rw-r--r--test/client_server_test.cc15
1 files changed, 12 insertions, 3 deletions
diff --git a/test/client_server_test.cc b/test/client_server_test.cc
index fab9411ab..f84a0cb58 100644
--- a/test/client_server_test.cc
+++ b/test/client_server_test.cc
@@ -115,7 +115,7 @@ BOOST_AUTO_TEST_CASE (client_server_test_rgb)
EncodeServer* server = new EncodeServer (log, true, 2);
- new thread (boost::bind (&EncodeServer::run, server));
+ thread* server_thread = new thread (boost::bind (&EncodeServer::run, server));
/* Let the server get itself ready */
dcpomatic_sleep (1);
@@ -135,6 +135,9 @@ BOOST_AUTO_TEST_CASE (client_server_test_rgb)
delete *i;
}
+ server_thread->join ();
+ delete server_thread;
+
delete server;
}
@@ -194,7 +197,7 @@ BOOST_AUTO_TEST_CASE (client_server_test_yuv)
EncodeServer* server = new EncodeServer (log, true, 2);
- new thread (boost::bind (&EncodeServer::run, server));
+ thread* server_thread = new thread (boost::bind (&EncodeServer::run, server));
/* Let the server get itself ready */
dcpomatic_sleep (1);
@@ -214,6 +217,9 @@ BOOST_AUTO_TEST_CASE (client_server_test_yuv)
delete *i;
}
+ server_thread->join ();
+ delete server_thread;
+
delete server;
}
@@ -284,7 +290,7 @@ BOOST_AUTO_TEST_CASE (client_server_test_j2k)
EncodeServer* server = new EncodeServer (log, true, 2);
- new thread (boost::bind (&EncodeServer::run, server));
+ thread* server_thread = new thread (boost::bind (&EncodeServer::run, server));
/* Let the server get itself ready */
dcpomatic_sleep (1);
@@ -304,5 +310,8 @@ BOOST_AUTO_TEST_CASE (client_server_test_j2k)
delete *i;
}
+ server_thread->join ();
+ delete server_thread;
+
delete server;
}