summaryrefslogtreecommitdiff
path: root/libs/ardour/graph.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-09-14 16:42:40 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-09-14 16:42:40 -0400
commit7a30e63eaad66ded1c47f5cdb2e0f28c3b0a1d4a (patch)
tree25e1b01865e76193f3c88483d4f9de1c8abf2f9d /libs/ardour/graph.cc
parente6521bb0434d88802aa28e75235bc8c19ebb9262 (diff)
parentf5191e62578bd2ba2b3e2adf8cfc3634aa4b929c (diff)
fix merge conflicts with master
Diffstat (limited to 'libs/ardour/graph.cc')
-rw-r--r--libs/ardour/graph.cc11
1 files changed, 5 insertions, 6 deletions
diff --git a/libs/ardour/graph.cc b/libs/ardour/graph.cc
index edb5ab37ee..b37de547cd 100644
--- a/libs/ardour/graph.cc
+++ b/libs/ardour/graph.cc
@@ -101,7 +101,7 @@ Graph::reset_thread_list ()
}
Glib::Threads::Mutex::Lock lm (_session.engine().process_lock());
- pthread_t a_thread;
+ AudioBackendNativeThread a_thread;
if (!_thread_list.empty()) {
drop_threads ();
@@ -146,9 +146,8 @@ Graph::drop_threads ()
_callback_start_sem.signal ();
- for (list<pthread_t>::iterator i = _thread_list.begin(); i != _thread_list.end(); ++i) {
- void* status;
- pthread_join (*i, &status);
+ for (list<AudioBackendNativeThread>::iterator i = _thread_list.begin(); i != _thread_list.end(); ++i) {
+ AudioEngine::instance()->wait_for_process_thread_exit (*i);
}
_thread_list.clear ();
@@ -584,8 +583,8 @@ Graph::process_one_route (Route* route)
bool
Graph::in_process_thread () const
{
- for (list<pthread_t>::const_iterator i = _thread_list.begin (); i != _thread_list.end(); ++i) {
- if (*i == pthread_self()) {
+ for (list<AudioBackendNativeThread>::const_iterator i = _thread_list.begin (); i != _thread_list.end(); ++i) {
+ if (self_thread_equal (*i)) {
return true;
}
}