diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-07-21 13:42:11 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-07-21 13:42:11 -0400 |
commit | 3bf7c4ef49f4c271512f3d3eeb4b83df76f78649 (patch) | |
tree | 2c0ed9904f168d32f47775a14ce4d61ebc9054bd | |
parent | bd80b2f144c012669b56c83821e137be655acfe4 (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.cc | 2 |
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); } { |