summaryrefslogtreecommitdiff
path: root/libs/pbd
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-12-14 19:43:12 +0100
committerRobin Gareus <robin@gareus.org>2016-12-14 19:43:12 +0100
commit7dbdf6cc6dd2878edbf58d52a01a2192a0d18a0e (patch)
treeb71ed56d21ee41726fecd684275f590f7a6078b2 /libs/pbd
parent6b5891a78f31d894e9036d8dcd42564f49f30366 (diff)
Add some more invalidation debug messages.
Diffstat (limited to 'libs/pbd')
-rw-r--r--libs/pbd/event_loop.cc3
-rw-r--r--libs/pbd/pbd/abstract_ui.cc4
2 files changed, 5 insertions, 2 deletions
diff --git a/libs/pbd/event_loop.cc b/libs/pbd/event_loop.cc
index a1b3670a68..926c7016d3 100644
--- a/libs/pbd/event_loop.cc
+++ b/libs/pbd/event_loop.cc
@@ -87,6 +87,7 @@ EventLoop::invalidate_request (void* data)
*/
if (ir->event_loop) {
+ DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("%1: EventLoop::invalidate_request %2\n", ir->event_loop, ir));
{
Glib::Threads::Mutex::Lock lm (ir->event_loop->slot_invalidation_mutex());
for (list<BaseRequestObject*>::iterator i = ir->requests.begin(); i != ir->requests.end(); ++i) {
@@ -96,6 +97,8 @@ EventLoop::invalidate_request (void* data)
}
// should this not always be deleted, regardless if there's an event_loop?
delete ir;
+ } else {
+ DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("EventLoop::invalidate_request no event-loop for invalidation %1\n", ir));
}
return 0;
diff --git a/libs/pbd/pbd/abstract_ui.cc b/libs/pbd/pbd/abstract_ui.cc
index 19a0ba9c47..330e6ddc59 100644
--- a/libs/pbd/pbd/abstract_ui.cc
+++ b/libs/pbd/pbd/abstract_ui.cc
@@ -223,7 +223,7 @@ AbstractUI<RequestObject>::handle_ui_requests ()
* If the event results in object destruction, PBD::EventLoop::invalidate_request
* will delete the invalidation record (aka buf[0]), so we cannot use it after calling do_request
*/
- DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("%1: remove request from its invalidation list\n", event_loop_name()));
+ DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("%1: remove request %2 from its invalidation list %3\n", event_loop_name(), vec.buf[0], vec.buf[0]->invalidation));
if (vec.buf[0]->invalidation) {
DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("%1: removing invalidation record for that request\n", event_loop_name()));
if (vec.buf[0]->invalidation->event_loop && vec.buf[0]->invalidation->event_loop != this) {
@@ -298,7 +298,7 @@ AbstractUI<RequestObject>::handle_ui_requests ()
*/
if (req->invalidation) {
- DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("%1/%2 remove request from its invalidation list\n", event_loop_name(), pthread_name()));
+ DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("%1/%2 remove request %3 from its invalidation list %4\n", event_loop_name(), pthread_name(), req, req->invalidation));
Glib::Threads::Mutex::Lock li (req->invalidation->event_loop->slot_invalidation_mutex(), Glib::Threads::NOT_LOCK);
if (req->invalidation->event_loop && req->invalidation->event_loop != this) {