[FIX] Exception>>isNested
Paul McDonough
paulm at 4thEstate.com
Thu Jan 13 16:55:22 UTC 2000
Stephen:
This bug would have left you in the hands of the wrong exception
handler, which has nothing to do with method returns per se, so I think
the answer is "no". You could have run into a hole in the
ensured-execution machinery, though - I don't specifically know of any
bugs in there, but it is one of the more twisted areas in the code, so I
wouldn't be surprised to find one.
I would appreciate hearing about any remaining problems after you
install the fix - test cases that expose bugs are not always easy to
think of!
Cheers,
Paul
Stephen Pair wrote:
>
> Paul,
>
> I've noticed in certain situations when using exception handlers that
> returning from a method will mysteriously skip a few contexts. Is that a
> symptom that this fix corrects?
>
> Thanks,
> Stephen
>
> > Folks,
> >
> > In browsing through the recent 2.7 Squeak release, we noticed a bug in
> > Exception>>isNested. That method is supposed to answer true or false to
> > indicate whether or not the active exception handler is enclosed in
> > another handler which
> > handles similar exceptions. In the current release, the search for the
> > handler actually *sets* the active handler to be whatever outer handler
> > it finds. From there, any further code execution would thus take place
> > in an incorrect exception environment with, let's just say, potentially
> > startling results at the application level.
> >
> > The attached patch was installed in an up-to-date 2.7 image, and all
> > regression tests (see system category Exceptions-Tests) ran
> > successfully. It should also be compatible with all versions of Squeak
> > back to 2.3.
> >
> > Sorry for leaving that one in there,
> > Paul McDonough
> >
> > on behalf of those at TFEI who sometimes write code too late at night
> > ...
> >
More information about the Squeak-dev
mailing list
|