squeak-smalltalk / squeak-object-memory

Issues and assets related to the Squeak object memory.
https://bugs.squeak.org
MIT License
11 stars 1 forks source link

Debugger test19Abandon and test20TerminateProcess incorrect or failing #40

Closed isCzech closed 2 years ago

isCzech commented 2 years ago

Following up http://lists.squeakfoundation.org/pipermail/squeak-dev/2022-January/218167.html I've proposed a fix (Inbox: ToolsTests-jar.111) to test19Abandon and test20TerminateProcess

The fix is however dependent on fixing a debugger issue I've tried to fix by Tools-jar.1161 (Inbox): 1) Make all three termination modes equal in terms of how the chosen termination mode is propagated to #windowIsClosing. Current asymmetrical approach leads to an incorrect debugger termination via #terminate mode (it first terminates the debugged process and then calls close while in case of terminateAggerssively the debugger first calls close and only then terminates the debugged process; imo this is the root cause.

2) Replace termination of the debugged process with an indirect termination via a forked process (otherwise the debugger waits until the debugged process is terminated but if another error is raised during unwind the termination is halted and the assertion fail). This is a separate issue from 1) and only has been visible by merging the latest #terminate version.

The proposed fix clears the failing tests but a review from someone experienced is necessary I believe.

isCzech commented 2 years ago

closing; issue fixed in the spirit of the suggested solution; thanks to Marcel (mt)