summaryrefslogtreecommitdiff
path: root/libs/ardour/graph.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-09-12 11:32:09 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-09-12 11:32:09 -0400
commit4a6412aebe4f18578f201e99ddc74fc5d9cb6bfc (patch)
tree339637963f785f97b766424b9d63f4ee201af754 /libs/ardour/graph.cc
parentbb826f4beebfcedc50570b818c305560d2233e47 (diff)
parent4df3666738607039445ebc9fa083bf5c23ac5539 (diff)
merge with master
Diffstat (limited to 'libs/ardour/graph.cc')
-rw-r--r--libs/ardour/graph.cc12
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;
}