#BUGFIX by cg
class: OSProcess
comment/format in: #execute
changed:
#setupShufflerForOutput:
#startProcess
do not terminate shufflers before finished shuffling;
register output shufflers.
--- a/OSProcess.st Mon Jan 09 18:46:34 2017 +0100
+++ b/OSProcess.st Mon Jan 09 18:47:08 2017 +0100
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
"{ Package: 'stx:libbasic' }"
"{ NameSpace: Smalltalk }"
@@ -404,6 +402,7 @@
"/ beSystemProcess;
resume.
+ shufflerProcesses add:shufflerProcess.
streamsToClose add:externalStream.
^ externalStream
@@ -490,6 +489,8 @@
inDirectory:directory
newPgrp:newPgrp
showWindow:showWindow.
+
+ pid
]
action:[:status |
status stillAlive ifFalse:[
@@ -497,13 +498,13 @@
pid notNil ifTrue:[
OperatingSystem closePid:pid.
].
- shufflerProcesses do:[:eachProcess|
- "terminate the shuffler processes.
- They close the local side of the pipe when being terminated"
- eachProcess terminate.
- ].
+"/ shufflerProcesses do:[:eachProcess|
+"/ "terminate the shuffler processes.
+"/ They close the local side of the pipe when being terminated"
+"/ eachProcess terminate.
+"/ ].
+ finishSema signal.
terminateActionBlock value.
- finishSema signal.
].
].