| @@ -586,7 +586,10 @@ void CarlaPlugin::setCtrlChannel(const int8_t channel, const bool sendOsc, const | |||||
| if (kData->ctrlChannel != channel) | if (kData->ctrlChannel != channel) | ||||
| { | { | ||||
| kData->ctrlChannel = channel; | |||||
| { | |||||
| const ScopedProcessLocker spl(this, true); | |||||
| kData->ctrlChannel = channel; | |||||
| } | |||||
| #ifndef BUILD_BRIDGE | #ifndef BUILD_BRIDGE | ||||
| const float ctrlf = channel; | const float ctrlf = channel; | ||||
| @@ -914,7 +914,6 @@ public: | |||||
| bool allNotesOffSent = false; | bool allNotesOffSent = false; | ||||
| uint32_t time, nEvents = kData->event.portIn->getEventCount(); | uint32_t time, nEvents = kData->event.portIn->getEventCount(); | ||||
| uint32_t startTime = 0; | |||||
| uint32_t timeOffset = 0; | uint32_t timeOffset = 0; | ||||
| uint32_t nextBankIds[16] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0 }; | uint32_t nextBankIds[16] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0 }; | ||||
| @@ -942,8 +941,6 @@ public: | |||||
| if (kData->midiprog.current >= 0 && kData->midiprog.count > 0 && kData->ctrlChannel >= 0 && kData->ctrlChannel < 16) | if (kData->midiprog.current >= 0 && kData->midiprog.count > 0 && kData->ctrlChannel >= 0 && kData->ctrlChannel < 16) | ||||
| nextBankIds[kData->ctrlChannel] = kData->midiprog.data[kData->midiprog.current].bank; | nextBankIds[kData->ctrlChannel] = kData->midiprog.data[kData->midiprog.current].bank; | ||||
| } | } | ||||
| else | |||||
| startTime += timeOffset; | |||||
| } | } | ||||
| // Control change | // Control change | ||||