summaryrefslogtreecommitdiff
path: root/libs/ardour/control_protocol_manager.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-04-21 03:37:26 +0200
committerRobin Gareus <robin@gareus.org>2017-04-21 04:08:05 +0200
commit661d258687e4f49d11a3a20b7a59cdaacaea0ffb (patch)
tree47d23c5439ecebd2ece3602dd2f1e89d6a114130 /libs/ardour/control_protocol_manager.cc
parentbdd960cd99e41f51d9a8b98f27fe231ce1ed15db (diff)
Fix adeadlock (or rather NDEADLCK)
ControlProtocolManager::set_state() already takes the protocols_lock. However effectively this is a NO-OP. During ::set_state no CPI should be instantiated and ControlProtocolManager::teardown() returns early.
Diffstat (limited to 'libs/ardour/control_protocol_manager.cc')
-rw-r--r--libs/ardour/control_protocol_manager.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/libs/ardour/control_protocol_manager.cc b/libs/ardour/control_protocol_manager.cc
index 6a7bdfb3cb..014c2209d6 100644
--- a/libs/ardour/control_protocol_manager.cc
+++ b/libs/ardour/control_protocol_manager.cc
@@ -469,7 +469,7 @@ ControlProtocolManager::set_state (const XMLNode& node, int /*version*/)
}
} else {
if (_session) {
- teardown (*cpi, true);
+ teardown (*cpi, false);
} else {
cpi->requested = false;
}