projects
/
ardour.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9d7b5f6
)
reset IP MIDI port when deleting a mackie surface port
author
Paul Davis
<paul@linuxaudiosystems.com>
Sat, 3 Oct 2015 17:51:17 +0000
(13:51 -0400)
committer
Paul Davis
<paul@linuxaudiosystems.com>
Sat, 3 Oct 2015 17:51:17 +0000
(13:51 -0400)
libs/surfaces/mackie/surface_port.cc
patch
|
blob
|
history
diff --git
a/libs/surfaces/mackie/surface_port.cc
b/libs/surfaces/mackie/surface_port.cc
index 9694d7f08cf7459875d47653ed8b6d970457657d..3d7c1d66c6160d8c201cccfb2a936eae5a0eada8 100644
(file)
--- a/
libs/surfaces/mackie/surface_port.cc
+++ b/
libs/surfaces/mackie/surface_port.cc
@@
-74,15
+74,17
@@
SurfacePort::~SurfacePort()
{
if (dynamic_cast<MIDI::IPMIDIPort*>(_input_port)) {
delete _input_port;
{
if (dynamic_cast<MIDI::IPMIDIPort*>(_input_port)) {
delete _input_port;
+ _input_port = 0;
} else {
} else {
-
if (_async_in) {
if (_async_in) {
+ DEBUG_TRACE (DEBUG::MackieControl, string_compose ("unregistering input port %1\n", _async_in->name()));
AudioEngine::instance()->unregister_port (_async_in);
_async_in.reset ((ARDOUR::Port*) 0);
}
if (_async_out) {
_output_port->drain (10000);
AudioEngine::instance()->unregister_port (_async_in);
_async_in.reset ((ARDOUR::Port*) 0);
}
if (_async_out) {
_output_port->drain (10000);
+ DEBUG_TRACE (DEBUG::MackieControl, string_compose ("unregistering output port %1\n", _async_out->name()));
AudioEngine::instance()->unregister_port (_async_out);
_async_out.reset ((ARDOUR::Port*) 0);
}
AudioEngine::instance()->unregister_port (_async_out);
_async_out.reset ((ARDOUR::Port*) 0);
}