fix for storing 14 bit MIDI controller values
authorPaul Davis <paul@linuxaudiosystems.com>
Wed, 30 Apr 2014 14:10:06 +0000 (10:10 -0400)
committerPaul Davis <paul@linuxaudiosystems.com>
Wed, 30 Apr 2014 14:10:06 +0000 (10:10 -0400)
libs/midi++2/channel.cc

index 190ea185680fa48555acdbbef5d2f825477d71f1..67d6f5fb11b44ff4b66786ee2c3581c926804233 100644 (file)
@@ -138,7 +138,9 @@ Channel::process_controller (Parser & /*parser*/, EventTwoBytes *tb)
        } else if ((tb->controller_number >= 32 && 
                    tb->controller_number <= 63)) {
                   
-               cv = (unsigned short) _controller_val[tb->controller_number];
+               int cn = tb->controller_number - 32;
+
+               cv = (unsigned short) _controller_val[cn];
 
                /* LSB for CC 0-31 arrived. 
 
@@ -151,7 +153,6 @@ Channel::process_controller (Parser & /*parser*/, EventTwoBytes *tb)
                   high 7.
                */
 
-               int cn = tb->controller_number - 32;
                   
                if (_controller_14bit[cn] == false) {
                        _controller_14bit[cn] = true;