summaryrefslogtreecommitdiff
path: root/libs/ardour/butler.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2015-03-02 23:13:19 +0100
committerRobin Gareus <robin@gareus.org>2015-03-02 23:13:19 +0100
commit8e3ec4b9abb10b9e3b6289891c88a2156a26c383 (patch)
treecae760c126b21d277dfa06b5ae19865ba7159d6b /libs/ardour/butler.cc
parent5cfa389978044d57afe529f1a8503b3a948f6e44 (diff)
leave a ToDo note for the butler.
Diffstat (limited to 'libs/ardour/butler.cc')
-rw-r--r--libs/ardour/butler.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/libs/ardour/butler.cc b/libs/ardour/butler.cc
index cd00965062..a89e8295d2 100644
--- a/libs/ardour/butler.cc
+++ b/libs/ardour/butler.cc
@@ -328,7 +328,19 @@ void
Butler::queue_request (Request::Type r)
{
char c = r;
- _xthread.deliver (c);
+ if (_xthread.deliver (c) != 1) {
+ /* the x-thread channel is non-blocking
+ * write may fail, but we really don't want to wait
+ * under normal circumstances.
+ *
+ * a lost "run" requests under normal RT operation
+ * is mostly harmless.
+ *
+ * TODO if ardour is freehweeling, wait & retry.
+ * ditto for Request::Type Quit
+ */
+ assert(1); // we're screwd
+ }
}
void