--- a/Process.st Tue Nov 22 14:52:52 2016 +0000
+++ b/Process.st Thu Nov 24 06:40:21 2016 +0100
@@ -519,17 +519,7 @@
^ self isDead
! !
-!Process methodsFor:'Compatibility-V''Age'!
-
-queueInterrupt:aBlock
- "VisualAge compatibility: alias for #interruptWith:
- arrange for the receiver process to be interrupted and
- evaluate aBlock in its interrupt handler."
-
- ^ self interruptWith:aBlock
-
- "Created: 15.11.1996 / 11:41:06 / cg"
-! !
+
!Process methodsFor:'accessing'!
@@ -972,9 +962,13 @@
interrupt
"evaluate my interrupt-actions.
The process will go back to where it got interrupted
- after doing this."
-
- self evaluateInterruptActionsWithContext:thisContext sender
+ after doing this.
+
+ This is also sent by the VM."
+
+ interruptActions size ~~ 0 ifTrue:[
+ self evaluateInterruptActionsWithContext:thisContext sender.
+ ].
!
interruptWith:aBlock
@@ -1062,10 +1056,8 @@
(i.e. those which are installed via #interruptWith:)"
interruptsDisabled := false.
- interruptActions size ~~ 0 ifTrue:[
- Processor activeProcess == self ifTrue:[
- self interrupt
- ]
+ (interruptActions size ~~ 0 and:[Processor activeProcess == self]) ifTrue:[
+ self interrupt.
]
! !
@@ -2097,6 +2089,7 @@
"Created: 28.10.1996 / 20:44:07 / cg"
! !
+
!Process methodsFor:'thread local storage'!
environment