summaryrefslogtreecommitdiffstats
path: root/src/desktop.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/desktop.cpp')
-rw-r--r--src/desktop.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/desktop.cpp b/src/desktop.cpp
index c7a763ae1..d74e8fdad 100644
--- a/src/desktop.cpp
+++ b/src/desktop.cpp
@@ -1582,6 +1582,13 @@ SPDesktop::setDocument (SPDocument *doc)
_layer_hierarchy->connectChanged(sigc::bind(sigc::ptr_fun(_layer_hierarchy_changed), this));
_layer_hierarchy->setTop(doc->getRoot());
+ // remove old EventLog if it exists (see also: bug #1071082)
+ if (event_log) {
+ doc->removeUndoObserver(*event_log);
+ delete event_log;
+ event_log = 0;
+ }
+
/* setup EventLog */
event_log = new Inkscape::EventLog(doc);
doc->addUndoObserver(*event_log);