Hi!
I am encountering a situation for which proceeding a 'self halt' changes the result of the method in which it is contained. i.e., [self halt. "blah..."] has not the same effect than ["blah..."] Does anyone see such a thing ?
I can provide an image if necessary.
Cheers, Alexandre
Alexandre Bergel a écrit :
Hi!
I am encountering a situation for which proceeding a 'self halt' changes the result of the method in which it is contained. i.e., [self halt. "blah..."] has not the same effect than ["blah..."] Does anyone see such a thing ?
I can provide an image if necessary.
Can you copy/past the method ?
Alexandre Bergel wrote:
Hi!
I am encountering a situation for which proceeding a 'self halt' changes the result of the method in which it is contained. i.e., [self halt. "blah..."] has not the same effect than ["blah..."] Does anyone see such a thing ?
Do the objects visible in the debugger have some lazy initialization code which might be triggered by them being displayed? Without seeing any context, that would be my first guess.
Cheers, Hans-Martin
Hans-Martin Mosner wrote:
Alexandre Bergel wrote:
Hi!
I am encountering a situation for which proceeding a 'self halt' changes the result of the method in which it is contained. i.e., [self halt. "blah..."] has not the same effect than ["blah..."] Does anyone see such a thing ?
Do the objects visible in the debugger have some lazy initialization code which might be triggered by them being displayed? Without seeing any context, that would be my first guess.
Also the if the block runs in another process than the UI stepping through it may give you other values. karl
I've bumped into some stuff (e.g., in Tweak) where there are different execution paths depending on the current process. - In some cases, things happen or don't happen depending on the process. - In other cases, things get set or copied to or from the current process. So the "normal" code (outside the debuggger) is all arranged for a certain set of behaviors, but code that is single-stepped makes use of diffferent behaviors in "the environment."
On Dec 4, 2005, at 7:22 AM, karl wrote:
Hans-Martin Mosner wrote:
Alexandre Bergel wrote:
Hi!
I am encountering a situation for which proceeding a 'self halt' changes the result of the method in which it is contained. i.e., [self halt. "blah..."] has not the same effect than ["blah..."] Does anyone see such a thing ?
Do the objects visible in the debugger have some lazy initialization code which might be triggered by them being displayed? Without seeing any context, that would be my first guess.
Also the if the block runs in another process than the UI stepping through it may give you other values. karl
Hans-Martin Mosner writes:
Alexandre Bergel wrote:
Hi!
I am encountering a situation for which proceeding a 'self halt' changes the result of the method in which it is contained. i.e., [self halt. "blah..."] has not the same effect than ["blah..."] Does anyone see such a thing ?
Do the objects visible in the debugger have some lazy initialization code which might be triggered by them being displayed? Without seeing any context, that would be my first guess.
It's also possible that the code relies on object hashes or similar. I've had a few bugs that were hidden by the order that a Set or Dictionary is iterated over. On different runs the hash values can be different so objects are stored in different orders.
Bryce
squeak-dev@lists.squeakfoundation.org