class: ProcessorScheduler
changed: #dispatchLoop
standalone apps shoudl ignore halts in the scheduler
process.
--- a/ProcessorScheduler.st Thu Jan 29 20:22:05 2015 +0100
+++ b/ProcessorScheduler.st Thu Jan 29 23:30:33 2015 +0100
@@ -852,11 +852,22 @@
dispatchAction := [ [dispatching] whileTrue:[ self dispatch ] ].
handlerAction := [:ex |
- ('Processor [info]: ignored signal (', ex creator printString, ')') infoPrintCR.
+ (HaltInterrupt accepts:ex creator) ifTrue:[
+ "/ in a standalone application, we do not want those
+ Smalltalk isStandAloneApp ifTrue:[
+ Smalltalk isStandAloneDebug ifFalse:[
+ ('Processor [info]: ignored (', ex creator printString, ')') infoPrintCR.
+ ex proceed.
+ ]
+ ].
+ ].
+
+ ('Processor [info]: caught (and ignored) signal (', ex creator printString, ')') infoPrintCR.
ex return
].
ignoredSignals := SignalSet
+ with:HaltInterrupt
with:TerminateProcessRequest
with:RecursionError
with:AbortAllOperationRequest.
@@ -3532,11 +3543,11 @@
!ProcessorScheduler class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/ProcessorScheduler.st,v 1.300 2014-12-30 14:28:47 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/ProcessorScheduler.st,v 1.301 2015-01-29 22:30:33 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libbasic/ProcessorScheduler.st,v 1.300 2014-12-30 14:28:47 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/ProcessorScheduler.st,v 1.301 2015-01-29 22:30:33 cg Exp $'
! !