Context.st
changeset 559 9a4a728d48d2
parent 552 694ecccaa1a0
child 564 f99df75c3028
--- a/Context.st	Wed Nov 15 13:13:46 1995 +0100
+++ b/Context.st	Wed Nov 15 13:58:10 1995 +0100
@@ -35,7 +35,7 @@
 !
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Context.st,v 1.43 1995-11-15 10:40:02 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Context.st,v 1.44 1995-11-15 12:58:10 cg Exp $'
 !
 
 documentation
@@ -877,7 +877,7 @@
 	 currently a context can only be unwound by
 	 the owning process - not from outside."
 
-    |con sel unwindBlock|
+    |con unwindBlock|
 
     sender isNil ifTrue:[
 	"
@@ -893,26 +893,13 @@
     con := thisContext.
     [con notNil and:[con ~~ self]] whileTrue:[
 	con isUnwindContext ifTrue:[
+	    "/
+	    "/ mhmh - hardwired knowledge about those methods (taking the 1st arg) 
+	    "/
 	    unwindBlock := con argAt:1.
 	    con unmarkForUnwind.
 	    unwindBlock value
 	].
-"/	con isBlockContext ifFalse:[
-"/	    "
-"/	     the way we find those unwind contexts seems kludgy ...
-"/	    "
-"/	    sel := con selector.
-"/	    ((sel == #valueNowOrOnUnwindDo:) or:[sel == #valueOnUnwindDo:]) ifTrue:[
-"/		"
-"/		 ... the way we evaluate the unwind blocks too
-"/		"
-"/		(con varAt:1) notNil ifTrue:[
-"/		    con varAt:1 put:true.
-"/		    unwindBlock := con argAt:1.
-"/		    unwindBlock value
-"/		]
-"/	    ]
-"/	].
 	con := con sender
     ].
 
@@ -944,7 +931,7 @@
 	 currently a context can only be restarted by
 	 the owning process - not from outside."
 
-    |con sel unwindBlock|
+    |con unwindBlock|
 
     "
      start with this context, moving up, looking for unwind actions
@@ -952,27 +939,14 @@
     con := thisContext.
     [con notNil and:[con ~~ self]] whileTrue:[
 	con isUnwindContext ifTrue:[
+	    "/
+	    "/ mhmh - hardwired knowledge about those methods (taking the 1st arg) 
+	    "/
 	    unwindBlock := con argAt:1.
 	    con unmarkForUnwind.
 	    unwindBlock value
 	].
 
-"/	con isBlockContext ifFalse:[
-"/	    "
-"/	     the way we find those unwind contexts seems kludgy ...
-"/	    "
-"/	    sel := con selector.
-"/	    ((sel == #valueNowOrOnUnwindDo:) or:[sel == #valueOnUnwindDo:]) ifTrue:[
-"/		"
-"/		 ... the way we evaluate the unwind blocks too
-"/		"
-"/		(con varAt:1) notNil ifTrue:[
-"/		    con varAt:1 put:true.
-"/		    unwindBlock := con argAt:1.
-"/		    unwindBlock value
-"/		]
-"/	    ]
-"/	].
 	con := con sender
     ].
 
@@ -1007,7 +981,7 @@
 	 currently a context can only be unwound by
 	 the owning process - not from outside."
 
-    |con sel unwindBlock|
+    |con unwindBlock|
 
     sender isNil ifTrue:[
 	"
@@ -1023,26 +997,13 @@
     con := thisContext.
     [con notNil and:[con ~~ self]] whileTrue:[
 	con isUnwindContext ifTrue:[
+	    "/
+	    "/ mhmh - hardwired knowledge about those methods (taking the 1st arg) 
+	    "/
 	    unwindBlock := con argAt:1.
 	    con unmarkForUnwind.
 	    unwindBlock value
 	].
-"/	con isBlockContext ifFalse:[
-"/	    "
-"/	     the way we find those unwind contexts seems kludgy ...
-"/	    "
-"/	    sel := con selector.
-"/	    ((sel == #valueNowOrOnUnwindDo:) or:[sel == #valueOnUnwindDo:]) ifTrue:[
-"/		"
-"/		 ... the way we evaluate the unwind blocks too
-"/		"
-"/		(con varAt:1) notNil ifTrue:[
-"/		    con varAt:1 put:true.
-"/		    unwindBlock := con argAt:1.
-"/		    unwindBlock value
-"/		]
-"/	    ]
-"/	].
 	con := con sender
     ].