summaryrefslogtreecommitdiffstats
path: root/src/uri-references.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/uri-references.cpp')
-rw-r--r--src/uri-references.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/uri-references.cpp b/src/uri-references.cpp
index 793e10d98..6b2a8401f 100644
--- a/src/uri-references.cpp
+++ b/src/uri-references.cpp
@@ -97,13 +97,13 @@ void URIReference::_setObject(SPObject *obj) {
SPObject *old_obj=_obj;
_obj = obj;
+ _release_connection.disconnect();
if (_obj) {
sp_object_href(_obj, _owner);
_release_connection = _obj->connectRelease(sigc::mem_fun(*this, &URIReference::_release));
}
_changed_signal.emit(old_obj, _obj);
if (old_obj) {
- _release_connection.disconnect();
/* release the old object _after_ the signal emission */
sp_object_hunref(old_obj, _owner);
}