summaryrefslogtreecommitdiff
path: root/libs/backends
diff options
context:
space:
mode:
authorTim Mayberry <mojofunk@gmail.com>2013-10-03 19:38:58 +1000
committerTim Mayberry <mojofunk@gmail.com>2013-10-04 18:54:54 +1000
commitf3a22fb88027548aebe67107e70113950d72417a (patch)
tree4500aa4d3cfb61bef645debb9c8e4a61c1b9e8eb /libs/backends
parent53ad2d187ffb31edcb90f7db5799886ee1806586 (diff)
Implement JACKAudioBackend::in_process_thread
Diffstat (limited to 'libs/backends')
-rw-r--r--libs/backends/jack/jack_audiobackend.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/libs/backends/jack/jack_audiobackend.cc b/libs/backends/jack/jack_audiobackend.cc
index 19f15b1fa1..a651f2522d 100644
--- a/libs/backends/jack/jack_audiobackend.cc
+++ b/libs/backends/jack/jack_audiobackend.cc
@@ -871,7 +871,19 @@ JACKAudioBackend::join_process_threads ()
bool
JACKAudioBackend::in_process_thread ()
{
- // XXX TODO
+ for (std::vector<jack_native_thread_t>::const_iterator i = _jack_threads.begin ();
+ i != _jack_threads.end(); i++) {
+
+#ifdef COMPILER_MINGW
+ if (*i == GetCurrentThread()) {
+ return true;
+ }
+#else // pthreads
+ if (pthread_equal (*i, pthread_self()) != 0) {
+ return true;
+ }
+#endif
+ }
return false;
}