--- a/DebugView.st Tue Oct 01 16:46:51 1996 +0200
+++ b/DebugView.st Fri Oct 04 11:21:57 1996 +0200
@@ -106,13 +106,29 @@
This is the standard way of entering the debugger;
sent from error- and halt messages."
- |active|
+ |active found c|
StepInterruptPending := nil.
thisContext isRecursive ifTrue:[
- ('DEBUGGER: reentered with: ', aString) errorPrintNL.
- ^ MiniDebugger enterWithMessage:'DEBUGGER: recursive error'.
+ "/ care for the special case, were the Debugger was autoloaded.
+ "/ in this case, thisContext IS recursive, but thats no error
+ "/ condition.
+ found := false.
+ c := thisContext sender.
+ [found not
+ and:[c notNil
+ and:[c selector ~~ #enter:withMessage:]]] whileTrue:[
+ c selector == #noByteCode ifTrue:[
+ found := true
+ ].
+ c := c sender
+ ].
+
+ found ifFalse:[
+ ('DEBUGGER: reentered with: ', aString) errorPrintNL.
+ ^ MiniDebugger enterWithMessage:'DEBUGGER: recursive error'.
+ ]
].
"
@@ -137,7 +153,7 @@
^ self enterUnconditional:aContext withMessage:aString
- "Modified: 1.7.1996 / 12:26:18 / cg"
+ "Modified: 4.10.1996 / 10:21:20 / cg"
!
enterUnconditional:aContext withMessage:aString
@@ -2641,5 +2657,5 @@
!DebugView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.99 1996-07-26 14:48:32 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.100 1996-10-04 09:21:57 cg Exp $'
! !