Prevent infinite recursion for unspeakable chars (PR #11865)
Fixes #11752
When reading characters that do not have any description in NVDA, a 'no content'
utterance can be produced. In this case the empty string is the last
'command' in the sequence passed to 'ensureEndUtterance', resulting in
the sequence not being given an indexCommand or an EndUtteranceCommand.
The indexCommand is required for the cancellable speech processing, to
be able to track which utterance a cancellableSpeechCommand belongs to.
Noticed and fixed a similar issue for 'latestCancelledUtteranceIndex': zero is a might
be a valid index. Only no index (None) should take this path.