From f40167cb40207364624854e1fbd00f2db9f6a27c Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Mon, 1 Feb 2016 13:27:08 -0500 Subject: faderport: turn out all lights from destructor, and use Port::drain() to make sure data gets out --- libs/surfaces/faderport/faderport.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'libs') diff --git a/libs/surfaces/faderport/faderport.cc b/libs/surfaces/faderport/faderport.cc index 45dc9b82fa..922a329c3a 100644 --- a/libs/surfaces/faderport/faderport.cc +++ b/libs/surfaces/faderport/faderport.cc @@ -195,6 +195,8 @@ FaderPort::FaderPort (Session& s) FaderPort::~FaderPort () { + all_lights_out (); + if (_input_port) { DEBUG_TRACE (DEBUG::FaderPort, string_compose ("unregistering input port %1\n", boost::shared_ptr(_input_port)->name())); AudioEngine::instance()->unregister_port (_input_port); @@ -202,7 +204,7 @@ FaderPort::~FaderPort () } if (_output_port) { -// _output_port->drain (10000); //ToDo: is this necessary? It hangs the shutdown, for me + _output_port->drain (10000, 250000); /* check every 10 msecs, wait up to 1/4 second for the port to drain */ DEBUG_TRACE (DEBUG::FaderPort, string_compose ("unregistering output port %1\n", boost::shared_ptr(_output_port)->name())); AudioEngine::instance()->unregister_port (_output_port); _output_port.reset (); -- cgit v1.2.3