summaryrefslogtreecommitdiff
path: root/libs/pbd/event_loop.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/pbd/event_loop.cc')
-rw-r--r--libs/pbd/event_loop.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/pbd/event_loop.cc b/libs/pbd/event_loop.cc
index ea3f7a46af..fbbf9c83aa 100644
--- a/libs/pbd/event_loop.cc
+++ b/libs/pbd/event_loop.cc
@@ -60,7 +60,7 @@ EventLoop::set_event_loop_for_thread (EventLoop* loop)
void*
EventLoop::invalidate_request (void* data)
{
- InvalidationRecord* ir = (InvalidationRecord*) data;
+ InvalidationRecord* ir = (InvalidationRecord*) data;
/* Some of the requests queued with an EventLoop may involve functors
* that make method calls to objects whose lifetime is shorter
@@ -88,6 +88,7 @@ EventLoop::invalidate_request (void* data)
if (ir->event_loop) {
Glib::Threads::Mutex::Lock lm (ir->event_loop->slot_invalidation_mutex());
+ Glib::Threads::Mutex::Lock lr (ir->event_loop->request_invalidation_mutex());
for (list<BaseRequestObject*>::iterator i = ir->requests.begin(); i != ir->requests.end(); ++i) {
(*i)->valid = false;
(*i)->invalidation = 0;