summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-06-26 19:10:11 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-06-26 19:10:11 +0000
commitdde521f2c60757814c2e3f73d01dd60d7a9b1c95 (patch)
tree58fbbcddb69b605caaaaf3199317107667b3e51d /libs
parentfaaac88ac8bb9c0237b727850197cc4867c51338 (diff)
fix up some issues introduced by lifecycle tracking of Controllable in Generic MIDI control code
git-svn-id: svn://localhost/ardour2/branches/3.0@12947 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r--libs/surfaces/generic_midi/generic_midi_control_protocol.cc2
-rw-r--r--libs/surfaces/generic_midi/midicontrollable.cc5
2 files changed, 3 insertions, 4 deletions
diff --git a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
index 6b8e321112..05883b99be 100644
--- a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
+++ b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
@@ -638,7 +638,7 @@ GenericMidiControlProtocol::load_bindings (const string& xmlpath)
_current_bank = 0;
}
- if ((prop = (*citer)->property ("motorised")) != 0) {
+ if ((prop = (*citer)->property ("motorised")) != 0 || ((prop = (*citer)->property ("motorized")) != 0)) {
_motorised = string_is_affirmative (prop->value ());
} else {
_motorised = false;
diff --git a/libs/surfaces/generic_midi/midicontrollable.cc b/libs/surfaces/generic_midi/midicontrollable.cc
index a6d0b1c5ac..f866bab2bb 100644
--- a/libs/surfaces/generic_midi/midicontrollable.cc
+++ b/libs/surfaces/generic_midi/midicontrollable.cc
@@ -25,6 +25,7 @@
#include "pbd/error.h"
#include "pbd/controllable_descriptor.h"
#include "pbd/xml++.h"
+#include "pbd/stacktrace.h"
#include "midi++/port.h"
#include "midi++/channel.h"
@@ -77,7 +78,7 @@ MIDIControllable::MIDIControllable (GenericMidiControlProtocol* s, Port& p, Cont
MIDIControllable::~MIDIControllable ()
{
- drop_controllable ();
+ drop_external_control ();
}
int
@@ -112,7 +113,6 @@ MIDIControllable::drop_external_control ()
void
MIDIControllable::set_controllable (Controllable* c)
{
- drop_controllable ();
controllable = c;
}
@@ -210,7 +210,6 @@ MIDIControllable::lookup_controllable()
void
MIDIControllable::drop_controllable ()
{
- drop_external_control ();
controllable_death_connection.disconnect ();
controllable = 0;
}