slightly more efficient implementation of Graph::in_process_thread()
authorPaul Davis <paul@linuxaudiosystems.com>
Fri, 20 Jan 2012 14:35:02 +0000 (14:35 +0000)
committerPaul Davis <paul@linuxaudiosystems.com>
Fri, 20 Jan 2012 14:35:02 +0000 (14:35 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@11278 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/ardour/ardour/audioengine.h
libs/ardour/graph.cc

index a930d12e13eeb7456f59e9e7dd5d52dc919e4307..99b2508d8c9d57482b10f18dc4624b9593c8b0dd 100644 (file)
@@ -35,6 +35,7 @@
 
 #include "pbd/rcu.h"
 #include "pbd/signals.h"
+#include "pbd/stacktrace.h"
 
 #include <jack/weakjack.h>
 #include <jack/jack.h>
index 03ba4d969aeafd2fb521dae8a0c899718d08b100..5b435884d4fe7d056248ba0d8f2b03275828b425 100644 (file)
@@ -597,10 +597,10 @@ Graph::process_one_route (Route* route)
 bool
 Graph::in_process_thread () const
 {
-       list<pthread_t>::const_iterator i = _thread_list.begin ();
-       while (i != _thread_list.end() && *i != pthread_self ()) {
-               ++i;
+       for (list<pthread_t>::const_iterator i = _thread_list.begin (); i != _thread_list.end(); ++i) {
+               if (*i == pthread_self()) {
+                       return true;
+               }
        }
-
-       return i != _thread_list.end ();
+       return false;
 }