summaryrefslogtreecommitdiffstats
path: root/src/client
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2013-12-31 05:47:26 +0000
committerDavid Robillard <d@drobilla.net>2013-12-31 05:47:26 +0000
commitd05d7e4267eca39d8d54fb0d199a450b364b77c3 (patch)
treecd446d0786546367cd04f4c17e0878001fb32260 /src/client
parentc8a1355b8f612048ca3169df78f4f1dbad50c6ac (diff)
downloadingen-d05d7e4267eca39d8d54fb0d199a450b364b77c3.tar.gz
ingen-d05d7e4267eca39d8d54fb0d199a450b364b77c3.tar.bz2
ingen-d05d7e4267eca39d8d54fb0d199a450b364b77c3.zip
Fix crash on bulk deletion and AtomWriter forge errors.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5240 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/client')
-rw-r--r--src/client/ClientStore.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/client/ClientStore.cpp b/src/client/ClientStore.cpp
index 9882d2d5..56c74cd8 100644
--- a/src/client/ClientStore.cpp
+++ b/src/client/ClientStore.cpp
@@ -105,12 +105,13 @@ ClientStore::remove_object(const Raul::Path& path)
return SPtr<ObjectModel>();
}
+ SPtr<ObjectModel> object = dynamic_ptr_cast<ObjectModel>(top->second);
+
// Remove the object and all its descendants
Objects removed;
remove(top, removed);
// Notify everything that needs to know this object is going away
- SPtr<ObjectModel> object = dynamic_ptr_cast<ObjectModel>(top->second);
if (object) {
// Notify the program this object is going away
object->signal_destroyed().emit();