No, the idea of the emergency debugger is that it still works when
everything else fails.

Lukas

2009/12/30 Mariano Martinez Peck <[email protected]>:
>
>
> On Tue, Dec 29, 2009 at 6:54 PM, Lukas Renggli <[email protected]> wrote:
>>
>> I don't think that's a good idea. If you print so many stack frames,
>> then the emergency evaluator is out of screen.
>
> Yes, that's true :(
> We cannot have vertical scroll ? I just ask with my total ignorance, but I
> guess that not.
>
>>
>> Lukas
>>
>> 2009/12/29 Mariano Martinez Peck <[email protected]>:
>> >
>> >
>> > On Tue, Dec 29, 2009 at 6:13 PM, Lukas Renggli <[email protected]>
>> > wrote:
>> >>
>> >> > lead to ugly side effects in loading specific packages.  Details
>> >> > aside,
>> >> > it
>> >> > seems _really_ bad to me for the vm to crash without leaving behind
>> >> > any
>> >> > traces of what happened.
>> >>
>> >> This is not a VM that crashes. In fact everything is still fully
>> >> functional and running. What Mariano is seeing is the emergency
>> >> debugger, a very primitive debugger implemented in
>> >> MorphicUIManager>>onPrimitiveError: used when everything else fails.
>> >>
>> >
>> > Thanks Lukas for the explanation. Every day I learn something new :)
>> >
>> > Now I was wondering if we can change the onPrimitiveError:  to something
>> > like this:
>> >
>> >
>> > onPrimitiveError: aString
>> >
>> >
>> >
>> >                                  | context |
>> >
>> >
>> >
>> >
>> >     (String
>> >         streamContents:
>> >             [:s |
>> >             s nextPutAll: '***System error handling failed***'.
>> >             s cr; nextPutAll: aString.
>> >             context := thisContext sender sender.
>> >             200 timesRepeat: [context == nil ifFalse: [s cr; print:
>> > (context
>> > := context sender)]].
>> >             s cr; nextPutAll: '-------------------------------'.
>> >             s cr; nextPutAll: 'Type CR to enter an emergency
>> > evaluator.'.
>> >             s cr; nextPutAll: 'Type any other character to restart.'])
>> >         displayAt: 10 @ 0.
>> >     [Sensor keyboardPressed] whileFalse.
>> >     Sensor keyboard = Character cr ifTrue: [Transcripter
>> > emergencyEvaluator].
>> >
>> >     World install "init hands and redisplay"
>> >
>> >
>> >
>> > I just changed to 200 timesRepeat instead of 20 so that to have the full
>> > stack, or at least, more than 20 lines and also the point of
>> > displayAt:
>> > 10 @ 0.   because in my case I couldn't see the first letters of the
>> > windows.
>> >
>> > If you are ok, I can put a slice in the inbox and create the issue.
>> >
>> > Thanks
>> >
>> > Mariano
>> >
>> >
>> >>
>> >> Lukas
>> >>
>> >> --
>> >> Lukas Renggli
>> >> http://www.lukas-renggli.ch
>> >>
>> >> _______________________________________________
>> >> Pharo-project mailing list
>> >> [email protected]
>> >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>> >
>> >
>> > _______________________________________________
>> > Pharo-project mailing list
>> > [email protected]
>> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>> >
>>
>>
>>
>> --
>> Lukas Renggli
>> http://www.lukas-renggli.ch
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [email protected]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>



-- 
Lukas Renggli
http://www.lukas-renggli.ch

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to