Recovery chance for Inputs not supporting nil

Certain cartridges may not expect an input result to be nil, and may
execute operations that crash in this case.
When a text input is being answered by the user without providing an
answer, a first call is being made passing nil to OnGetInput. If this
leads to a crash, a second attempt is made by calling OnGetInput with an
empty string instead. If this second attempt fails, the crash is allowed
to happen.