summaryrefslogtreecommitdiffstats
path: root/src/document-subset.cpp
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2010-02-04 02:39:19 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2010-02-04 02:39:19 +0000
commit85817f1754c46f3a0c78990766fbd19c8928f2dc (patch)
treed318dcf6d41d64dbdfdcdae269ff9169f59457df /src/document-subset.cpp
parentReduce libsigc++ usage to partially fix performance regressions (diff)
downloadinkscape-85817f1754c46f3a0c78990766fbd19c8928f2dc.tar.gz
inkscape-85817f1754c46f3a0c78990766fbd19c8928f2dc.zip
Fix access to removed elements of a map in document-subset.cpp
Fixed bugs: - https://launchpad.net/bugs/508649 (bzr r9045)
Diffstat (limited to 'src/document-subset.cpp')
-rw-r--r--src/document-subset.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/document-subset.cpp b/src/document-subset.cpp
index aa4046d86..eb7265b2d 100644
--- a/src/document-subset.cpp
+++ b/src/document-subset.cpp
@@ -184,9 +184,6 @@ private:
void _doRemove(SPObject *obj) {
Record &record=records[obj];
- record.release_connection.disconnect();
- record.position_changed_connection.disconnect();
- records.erase(obj);
if ( record.parent == NULL ) {
Record &root = records[NULL];
@@ -198,6 +195,9 @@ private:
}
}
+ record.release_connection.disconnect();
+ record.position_changed_connection.disconnect();
+ records.erase(obj);
removed_signal.emit(obj);
sp_object_unref(obj);
}