summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-07-21 13:42:11 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-07-21 13:42:11 -0400
commit3bf7c4ef49f4c271512f3d3eeb4b83df76f78649 (patch)
tree2c0ed9904f168d32f47775a14ce4d61ebc9054bd
parentbd80b2f144c012669b56c83821e137be655acfe4 (diff)
do not delete MIDIControllable* when dealing with pending MIDI Control requests - the MIDIControllable belongs to the surface code in controllables
-rw-r--r--libs/surfaces/generic_midi/generic_midi_control_protocol.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
index a116c4f2a1..627ad8d66e 100644
--- a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
+++ b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
@@ -330,7 +330,6 @@ GenericMidiControlProtocol::start_learning (Controllable* c)
++ptmp;
if (((*i)->first)->get_controllable() == c) {
(*i)->second.disconnect();
- delete (*i)->first;
delete *i;
pending_controllables.erase (i);
}
@@ -349,6 +348,7 @@ GenericMidiControlProtocol::start_learning (Controllable* c)
if (!mc) {
mc = new MIDIControllable (this, *_input_port->parser(), *c, false);
+ controllables.push_back (mc);
}
{