Thrust value in MultirotorMixer::mix() seems not correct after pressing satety switch but before arming

MultirotorMixer::mix() function in mixer_multirotor.cpp gets thrust at the beginning of the function.

 float        thrust  = constrain(get_control(0, 3), 0.0f, 1.0f);

The value should be a float between 0 and 1. I checked the value using following debug statements.

 if (thrust < 0.0f) debug("WARNING <0");
 else if (thrust <= 1.0f ) debug("[0, 1]");
 else if (thrust > 1.0f ) debug("WARNING >1");
 else debug("?????");

After power on, but before the safety switch is pressed, the console displays [0, 1], which is correct. However, when I press the safety switch, I see “???”. The thrust value seems not a float. After I arm the copter, the thrust value becomes normal again.

Can someone tell me what the thrust value is after pressing the safety switch? Is there a bug here?