Hi Sven, The patch is now verified on both Linux and Windows using your latest test:
Main harness: 12 passed, 0 failed, 0 hung, 0 crashed
--pump-first: passed
--interrupt-race: passed
Windows blocked plain/TLS termination: approximately 125 ms
Windows synchronized callback termination: 16 ms
payload delivered=0 and error 10058 are expected: shutdown won the race,
and the client was correctly marked inactive, unregistered, and notified
exactly once.
So the previous 9/9 patch contained four real issues that are now resolved:
Scenario 10: Terminate now services CheckSynchronize while waiting.
Scenario 11: disconnects are notified one at a time, so callbacks
cannot invalidate queued pointers.
Scenario 12: a later callback exception cannot discard an earlier
pending disconnect.
Interrupt race: one atomic state now both claims and publishes the
interruption.
--pump-first: added the missing Notification override.
The existing inherited Create(aOwner) correction remains included.
fpc-websocket-safe-shutdown-cancelioex-v3.patch
Description: Binary data
_______________________________________________ fpc-pascal maillist - [email protected] https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
