On 25 October 2013 00:26, Nicolas Cellier <
nicolas.cellier.aka.n...@gmail.com> wrote:

> Hard to debug this kind of code :(
> This is reproducible on Squeak wiht on:do:, so on:fork: bizareness apart,
> this is another flaw in exception handling, along with wrong handler for
> nested exception (testHandlerFromAction below), unless it's an avatar.
>
> Still, I do not see how you get the errorSubscriptBound:...
> In Squeak that would mean that you sent #handleSignal: to a not
> isHandlerContext ContextPart...
> I never saw this, but if Eliot says so...
>
>
>
> ExceptionTests>>testHandlerFromAction
>     "A test ensuring that nested exceptions work as expected."
>
>     | result |
>     result := [
>         [
>             [self error: 'trigger error'] on: ZeroDivide do: [ :ex |
> 'inner' ]
>         ] on: Error do: [ :ex | 3 / 0 ]
>     ] on: ZeroDivide do: [ :ex | 'outer' ].
>     self assert: 'outer' equals: result description: 'Incorrect handler'.
>
> good find :)

https://pharo.fogbugz.com/f/cases/11996/Wrong-exception-handler-problem


>
>
> 2013/10/24 Igor Stasenko <siguc...@gmail.com>
>
>>
>> ok, it seems i found how to reproduce the situation with following:
>>
>> [  [ 1/0 ] ensure: [ nil foo ] ] on: Error fork: [ :ex | 1halt ]
>>
>> you will get halt, and if you close the debugger , it will throw unwind
>> error.
>> (while instead it should throw DNU)
>>
>>
>> --
>> Best regards,
>> Igor Stasenko.
>>
>
>


-- 
Best regards,
Igor Stasenko.

Reply via email to