Skip to content

clear state after timeout'd special call

Harald Sitter requested to merge work/nocrashysftp into master

this fixes a crash with the sftp worker.

what happens is that when a worker uses the timeoutSpecialCommand infrastructure they'll get a special() call before the regular dispatch call. this would cause double-finished or double-errors emissions because we hadn't cleared the state after the timeout special call. to solve this problem we'll simply treat the timeout call like any other dispatch call and verify the state and then reset it back to idle

we could also have continued but to prevent side effects of this fix I've opted to keep the previous control flow going where the timeout occurs in the same loop iteration as the dispatch.

Merge request reports