diff --git a/radio/src/opentx.cpp b/radio/src/opentx.cpp index b405931cb..5c2e2f75c 100644 --- a/radio/src/opentx.cpp +++ b/radio/src/opentx.cpp @@ -1833,7 +1833,7 @@ void evalFunctions() CustomFnData *sd = &g_model.funcSw[i]; int8_t swtch = CFN_SWITCH(sd); if (swtch) { - MASK_CFN_TYPE switch_mask = ((MASK_CFN_TYPE)1 << i); + MASK_CFN_TYPE switch_mask = ((MASK_CFN_TYPE)1 << i); bool active = getSwitch(swtch); @@ -2025,6 +2025,10 @@ void evalFunctions() PUSH_CUSTOM_PROMPT(active ? param : param+1, i+1); } } + if (!active) { + // PLAY_BOTH would change activeFnSwitches otherwise + switch_mask = 0; + } break; } #else