summaryrefslogtreecommitdiff
path: root/libs/backends/alsa
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2014-10-22 17:02:15 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2014-10-22 17:07:11 -0400
commit68458cde69bb6aae4dc8d3e5dce3e0ddc1be32e6 (patch)
treeefefa6245cac2907d73d481c816b660d2af2f63f /libs/backends/alsa
parentaa0effb4cb38f4c3a06564bd9e6a0ee516d4f958 (diff)
fix all 4 backends' failure to include the main "backend" thread when computing ::in_process_thread()
Diffstat (limited to 'libs/backends/alsa')
-rw-r--r--libs/backends/alsa/alsa_audiobackend.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/libs/backends/alsa/alsa_audiobackend.cc b/libs/backends/alsa/alsa_audiobackend.cc
index c137078db0..a33d8d5378 100644
--- a/libs/backends/alsa/alsa_audiobackend.cc
+++ b/libs/backends/alsa/alsa_audiobackend.cc
@@ -758,6 +758,10 @@ AlsaAudioBackend::join_process_threads ()
bool
AlsaAudioBackend::in_process_thread ()
{
+ if (pthread_equal (_main_thread, pthread_self()) != 0) {
+ return true;
+ }
+
for (std::vector<pthread_t>::const_iterator i = _threads.begin (); i != _threads.end (); ++i)
{
if (pthread_equal (*i, pthread_self ()) != 0) {