diff options
author | Robin Gareus <robin@gareus.org> | 2016-11-24 09:02:47 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-11-24 09:02:47 +0100 |
commit | bc0fa4d689a4bbcc4afa8a86fff53567bac80a57 (patch) | |
tree | e2f26aab15dcb02823374c3ec57f75b4a13b0be1 /libs/pbd/pbd/abstract_ui.h | |
parent | e2012bc5e49618b8f9624f5e6a7dcd94e20405d7 (diff) |
Fix mysterious crashes such as #7049
Fixes an issue with corrupted std::lists<> due to concurrent writes
to the invalidation list which eventually resulted in
EventLoop::invalidate_request() not invalidating requests.
Concurrency sucks rocks hard.
Diffstat (limited to 'libs/pbd/pbd/abstract_ui.h')
-rw-r--r-- | libs/pbd/pbd/abstract_ui.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libs/pbd/pbd/abstract_ui.h b/libs/pbd/pbd/abstract_ui.h index 78a337fc40..278f8a2603 100644 --- a/libs/pbd/pbd/abstract_ui.h +++ b/libs/pbd/pbd/abstract_ui.h @@ -63,6 +63,7 @@ class ABSTRACT_UI_API AbstractUI : public BaseUI Glib::Threads::Mutex& slot_invalidation_mutex() { return request_buffer_map_lock; } Glib::Threads::Mutex request_buffer_map_lock; + Glib::Threads::Mutex request_invalidation_lock; static void* request_buffer_factory (uint32_t num_requests); |