I can confirm, commands spoken while VoiceAttack is set not to listen via command are executed when it starts listening again in some cases.
This simple command has the same issue:
Stop VoiceAttack listening
Pause 10 seconds
Start VoiceAttack listening
I've spend over an hour(closer to two probably) testing various scenarios, and I can reproduce the following:
If a command with "Stop VoiceAttack listening" pauses a number of seconds, then executes "Start VoiceAttack listening", anything spoken during said pause will execute as soon as listening is enabled.
This also occurs when using "Execute Another Command" to start listening using a different command, even with "Wait until this command completes before continuing" is not checked.
To clarify:
- "Stop VoiceAttack listening" is executed
- Listening suspended
- "<Pause for 30 seconds>"
- Speak commands, phrases, or anything picked up by the speech engine
- Wait 20 seconds or more for the pause to run out
- "Start VoiceAttack listening"
- "Listening Resumed"
- Commands execute, or "Unrecognized :" added to log
If "Start VoiceAttack listening" is removed from the command, and the UI "Listening" button is operated while the pause is running, the following can be observed:
- "Stop VoiceAttack listening" is executed
- Listening suspended
- "<Pause for 30 seconds>"
- Speak commands, phrases, or anything picked up by the speech engine
- "Listening" UI button clicked
- "Listening Resumed"
- Wait 20 seconds or more for the pause to run out
- Commands execute, or "Unrecognized :" added to log
I also tested using TTS with "Wait until speech completes before continuing command" checked, and a keypress which held down for 10 seconds, instead of a pause, both of which gave the same result; Though that may be down to those using the same underlying function as "Pause".
If listening is resumed manually by clicking the UI "Listening" button right after the pause runs out(Well, as soon as the command wrote to the event log to let me know it was, and some added delay for reaction time), nothing appears in the log, and no commands are executed.
As requested, I created a new speech profile and tried again, the behavior did not change. I rebooted, created another one before opening VoiceAttack, and tried again: The behavior did not change.
EDIT: Another quirk to add: If "Allow other commands to be executed while this one is running" is checked on the stop-pause-start listening command, nothing appears in the log, and no commands are executed, if spoken during the pause.