dont use con args (use con argAt) - this avoids creating an array copy
authorClaus Gittinger <cg@exept.de>
Fri, 09 Feb 1996 13:22:34 +0100
changeset 950 1ead6817a6c8
parent 949 3816e831f5f3
child 951 2dd898849a8a
dont use con args (use con argAt) - this avoids creating an array copy
Exception.st
--- a/Exception.st	Fri Feb 09 13:21:43 1996 +0100
+++ b/Exception.st	Fri Feb 09 13:22:34 1996 +0100
@@ -348,7 +348,7 @@
      Finally fall back to Exceptions emergencyHandler, which is always
      available and enters the debugger."
 
-    |con block noHandlerSignal any msg sel activeHandler|
+    |con block noHandlerSignal any msg sel activeHandler conArg1|
 
     con := thisContext sender.  "the raise-context"
     con := con sender.          "the signal raise context"
@@ -377,12 +377,12 @@
 	con isBlockContext ifFalse:[
 	    sel := con selector.
 	    sel == #doCallHandler: ifTrue:[
-		activeHandler := con args at:1
+		activeHandler := con argAt:1
 	    ].
 
 	    ((sel == #'handle:do:') 
 	    or:[((sel == #'handle:from:do:') 
-		and:[(con args at:2) == originator])]) ifTrue:[
+		and:[(con argAt:2) == originator])]) ifTrue:[
 		"
 		 if this is the Signal>>handle:do: context
 		 or a SignalSet>>handle:do: context with self in it,
@@ -391,14 +391,15 @@
 		(con receiver accepts:signal) ifTrue:[
 		    "call the handler"
 
-		    activeHandler == (con args at:1) ifTrue:[
+		    conArg1 := con argAt:1.
+		    activeHandler == conArg1 ifTrue:[
 "/                        'skip active handler:' print.
 "/                        con print. ' ' print. con receiver print.
 "/                        ' for ' print. signal printNL
 		    ] ifFalse:[
 			handlerContext := con.
 			any := true.
-			self doCallHandler:(con args at:1).
+			self doCallHandler:conArg1.
 
 			"if the handler rejects, we arrive here"
 			"continue search for another handler"
@@ -496,6 +497,6 @@
 !Exception class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Exception.st,v 1.30 1995-12-15 12:47:32 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Exception.st,v 1.31 1996-02-09 12:22:34 cg Exp $'
 ! !
 Exception initialize!