On Tue, 25 Jun 2013, Stéphane Ducasse wrote:
Hi guys
when working on a new morphic kernel, we got stuck with a really difficult to find bug (we are still looking for it). If new generation debugger lovers want to try. Here it is
- load the bloc version 6 from AlainPlantec/Bloc on smalltalkHub
- execute the snippet (alain will post the snippet because it is on his machine)
BlProtoMorph new openInWorld
(there is another one)
- move the mouse and the system gets blocked.
Just type kill -USR1 <pid> and you'll be able to see where it got blocked. Alternatively you can run a high priority process in the image which takes snapshots of other processes (I'd choose the UI process and the finalization process, since the former gets blocked, and the latter uses a pretty much broken data structure in Pharo) every once in a while, and writes them do disk/whatever. Levente
After looking for it for a couple of hours here are some wishes list.
- would be good to be able to set a haltOnce to **all** the methods of a **particular** object :)
- would be good to have the equivalent of GlobalVaHoldingOneObject haltOnce ifTrue: [â¦.]
- would be nice that we can say that the object once debugged does not receive any other messages (imagine an object in a fast rendering loops and that one message causes problems).
Stef