summaryrefslogtreecommitdiffstats
path: root/src/server/events/DisconnectAll.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-08-20 23:11:39 +0000
committerDavid Robillard <d@drobilla.net>2012-08-20 23:11:39 +0000
commit08b62fe47b81117c17cbd7b08210b0a91d104126 (patch)
tree2d21c4f250a6c160686a9ea4fa47ac1132391905 /src/server/events/DisconnectAll.cpp
parente7e8876464377e3c222e15783c39af7e411a44a3 (diff)
downloadingen-08b62fe47b81117c17cbd7b08210b0a91d104126.tar.gz
ingen-08b62fe47b81117c17cbd7b08210b0a91d104126.tar.bz2
ingen-08b62fe47b81117c17cbd7b08210b0a91d104126.zip
Replace several assertions with graceful error handling.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4731 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/events/DisconnectAll.cpp')
-rw-r--r--src/server/events/DisconnectAll.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server/events/DisconnectAll.cpp b/src/server/events/DisconnectAll.cpp
index 019193e6..1548c5e1 100644
--- a/src/server/events/DisconnectAll.cpp
+++ b/src/server/events/DisconnectAll.cpp
@@ -107,7 +107,9 @@ DisconnectAll::pre_process()
_block = dynamic_cast<BlockImpl*>(object);
_port = dynamic_cast<PortImpl*>(object);
- assert((_block || _port) && !(_block && _port));
+ if (!_block && !_port) {
+ return Event::pre_process_done(INTERNAL_ERROR, _path);
+ }
}
// Find set of edges to remove
@@ -120,8 +122,7 @@ DisconnectAll::pre_process()
|| c->head()->parent_block() == _block) {
to_remove.insert(c);
}
- } else {
- assert(_port);
+ } else if (_port) {
if (c->tail() == _port || c->head() == _port) {
to_remove.insert(c);
}