fix absorb instrument bug: octave set to -1 when most recent 'note' was OFF/REL/===
This commit is contained in:
parent
08143a54ae
commit
aeee6260ae
|
@ -1846,8 +1846,11 @@ void FurnaceGUI::doAbsorbInstrument() {
|
||||||
}
|
}
|
||||||
|
|
||||||
// absorb most recent octave (i.e. set curOctave such that the "main row" (QWERTY) of
|
// absorb most recent octave (i.e. set curOctave such that the "main row" (QWERTY) of
|
||||||
// notes will result in an octave number equal to the previous note).
|
// notes will result in an octave number equal to the previous note). make sure to
|
||||||
if (!foundOctave && pat->data[i][0] != 0) {
|
// skip "special note values" like OFF/REL/=== and "none", since there won't be valid
|
||||||
|
// octave values
|
||||||
|
unsigned char note=pat->data[i][0];
|
||||||
|
if (!foundOctave && note!=0 && note!=100 && note!=101 && note!=102) {
|
||||||
foundOctave=true;
|
foundOctave=true;
|
||||||
|
|
||||||
// decode octave data (was signed cast to unsigned char)
|
// decode octave data (was signed cast to unsigned char)
|
||||||
|
|
Loading…
Reference in a new issue