summaryrefslogtreecommitdiff
path: root/libs/ardour/midi_track.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2018-03-28 00:32:32 +0200
committerRobin Gareus <robin@gareus.org>2018-03-28 00:32:32 +0200
commitdd83d25bafd1b8620eaae8f4ff812e2b536160fe (patch)
treefbc2b64c749741146ef16f2d3e039e82a22f44e9 /libs/ardour/midi_track.cc
parent1de68d791725ca80da08261676a4edbe96600ed4 (diff)
NO-OP: prefer binary OR to set midi-status byte
Diffstat (limited to 'libs/ardour/midi_track.cc')
-rw-r--r--libs/ardour/midi_track.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/libs/ardour/midi_track.cc b/libs/ardour/midi_track.cc
index 798bd1aef5..1608f13c7e 100644
--- a/libs/ardour/midi_track.cc
+++ b/libs/ardour/midi_track.cc
@@ -613,36 +613,37 @@ MidiTrack::MidiControl::actually_set_value (double val, PBD::Controllable::Group
uint8_t ev[3] = { parameter.channel(), uint8_t (val), 0 };
switch(parameter.type()) {
case MidiCCAutomation:
- ev[0] += MIDI_CMD_CONTROL;
+ ev[0] |= MIDI_CMD_CONTROL;
ev[1] = parameter.id();
ev[2] = int(val);
break;
case MidiPgmChangeAutomation:
size = 2;
- ev[0] += MIDI_CMD_PGM_CHANGE;
+ ev[0] |= MIDI_CMD_PGM_CHANGE;
ev[1] = int(val);
break;
case MidiChannelPressureAutomation:
size = 2;
- ev[0] += MIDI_CMD_CHANNEL_PRESSURE;
+ ev[0] |= MIDI_CMD_CHANNEL_PRESSURE;
ev[1] = int(val);
break;
case MidiNotePressureAutomation:
- ev[0] += MIDI_CMD_NOTE_PRESSURE;
+ ev[0] |= MIDI_CMD_NOTE_PRESSURE;
ev[1] = parameter.id();
ev[2] = int(val);
break;
case MidiPitchBenderAutomation:
- ev[0] += MIDI_CMD_BENDER;
+ ev[0] |= MIDI_CMD_BENDER;
ev[1] = 0x7F & int(val);
ev[2] = 0x7F & (int(val) >> 7);
break;
default:
+ size = 0;
assert(false);
}
_route->write_immediate_event(size, ev);