diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-09-12 11:32:09 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-09-12 11:32:09 -0400 |
commit | 4a6412aebe4f18578f201e99ddc74fc5d9cb6bfc (patch) | |
tree | 339637963f785f97b766424b9d63f4ee201af754 /libs/ardour/graph.cc | |
parent | bb826f4beebfcedc50570b818c305560d2233e47 (diff) | |
parent | 4df3666738607039445ebc9fa083bf5c23ac5539 (diff) |
merge with master
Diffstat (limited to 'libs/ardour/graph.cc')
-rw-r--r-- | libs/ardour/graph.cc | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/libs/ardour/graph.cc b/libs/ardour/graph.cc index 2425f8b6ef..50a66b6144 100644 --- a/libs/ardour/graph.cc +++ b/libs/ardour/graph.cc @@ -102,7 +102,7 @@ Graph::reset_thread_list () } Glib::Threads::Mutex::Lock lm (_session.engine().process_lock()); - jack_native_thread_t a_thread; + AudioBackendNativeThread a_thread; if (!_thread_list.empty()) { drop_threads (); @@ -147,8 +147,8 @@ Graph::drop_threads () _callback_start_sem.signal (); - for (list<jack_native_thread_t>::iterator i = _thread_list.begin(); i != _thread_list.end(); ++i) { - AudioEngine::instance()->stop_process_thread(*i); + 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,12 +584,10 @@ Graph::process_one_route (Route* route) bool Graph::in_process_thread () const { -#ifndef COMPILER_MINGW - for (list<pthread_t>::const_iterator i = _thread_list.begin (); i != _thread_list.end(); ++i) { - if (pthread_equal(*i, pthread_self())) { + for (list<AudioBackendNativeThread>::const_iterator i = _thread_list.begin (); i != _thread_list.end(); ++i) { + if (self_thread_equal (*i)) { return true; } } -#endif return false; } |