[BUG]ObjectTracer seems broken
goran.hultgren at bluefish.se
goran.hultgren at bluefish.se
Wed Apr 10 08:16:24 UTC 2002
First, to use ObjectTracer you must turn off
Preferences>logDebuggerStackToFile otherwise the printing on the logfile
will cause problems. We should of course include information on that in
the class comment.
With that turned off, it turns out that a doit on:
(ObjectTracer on: 'hej') last
...pops up the debugger as expected. But a Proceed does not work, it
will fail in:
Message>>sentTo: receiver
"answer the result of sending this message to receiver"
lookupClass == nil
ifTrue: [^ receiver perform: selector withArguments: args]
ifFalse: [^ receiver perform: selector withArguments: args
inSuperclass: lookupClass]
lookupClass is set to ObjectTracer and that is not a superclass of
String (the traced object) giving the error message: 'lookupClass is not
in my inheritance chain'.
A send instead of a proceed will give the same result (after another
"stop" when the Debugger sends #instVarAt: to the ObjectTracer).
regards, Göran
PS. A workaround is by not using #sentTo but instead doing:
"tracedObject perform: aMessage selector withArguments: aMessage
arguments" but that's a hack. It worked in my own version of
ObjectTracer at least. DS
More information about the Squeak-dev
mailing list
|