e385bdb228
In order to recover from a transient Focus Out - Focus In disruption in the middle of a shortcut, which can be caused by certain window managers, Blender has code that checks which modifier keys are pressed after Focus In and restores the modifier state based on that. If one of the Ctrl, Shift, Alt, Super keys is not mapped anywhere in the active keyboard layout, XKeysymToKeycode returns the invalid zero keycode, and reading the key state produces garbage, which can cause an invalid modifier state. Check the return value to avoid this.