UnixPTYStream.st
changeset 3990 a54abbfabec0
parent 3906 33485a09adff
child 3991 b2b58d530860
--- a/UnixPTYStream.st	Wed Jul 06 15:37:55 2016 +0200
+++ b/UnixPTYStream.st	Wed Jul 06 18:23:21 2016 +0200
@@ -183,17 +183,16 @@
 
 !UnixPTYStream methodsFor:'private'!
 
-openPTYFor:aCommandString withMode:mode inDirectory:aDirectrory
+openPTYFor:aCommandString withMode:mode inDirectory:aDirectory
     "open a pty to the unix command in commandString"
 
     |blocked ptyFdArray execFdArray slaveFd masterFd shellAndArgs
-     shellPath shellArgs mbx mbxName
-     env shell args|
+     shellPath shellArgs mbx mbxName env|
 
     handle notNil ifTrue:[
         "the pipe was already open ...
          this should (can) not happen."
-        ^ self errorOpen
+        ^ self errorAlreadyOpen
     ].
         
     lastErrorNumber := nil.
@@ -230,7 +229,7 @@
     ].
 
     env := Dictionary new.
-    env at:'TERM'     put:'dumb'.
+    env at:'TERM'  put:'dumb'.
     env at:'SHELL' put:shellPath.
 
     "/ must block here, to avoid races due to early finishing
@@ -247,7 +246,7 @@
                       fileDescriptors:execFdArray
                       fork:true
                       newPgrp:true
-"/                      inDirectory:aDirectrory.
+                      inDirectory:aDirectory.
                ]
                action:[:status |
                   status stillAlive ifFalse:[
@@ -263,21 +262,20 @@
     ].
 
     pid notNil ifTrue:[
-        (OperatingSystem isMSWINDOWSlike) ifTrue:[
-            self setFileDescriptor:masterFd mode:mode.
-            "/ self setFileHandle:masterFd mode:mode
+        (OperatingSystem isVMSlike) ifTrue:[
+            "/
+            "/ reopen the mailbox as a file ...
+            "/
+            mbxName := OperatingSystem mailBoxNameOf:mbx.
+            mbxName notNil ifTrue:[
+                super open:mbxName withMode:mode
+            ].
         ] ifFalse:[
-            (OperatingSystem isVMSlike) ifTrue:[
-                "/
-                "/ reopen the mailbox as a file ...
-                "/
-                mbxName := OperatingSystem mailBoxNameOf:mbx.
-                mbxName notNil ifTrue:[
-                    super open:mbxName withMode:mode
-                ].
-            ] ifFalse:[
-                self setFileDescriptor:masterFd mode:mode.
-            ]
+"/                (OperatingSystem isMSWINDOWSlike) ifTrue:[
+"/                    self setFileHandle:masterFd mode:mode
+"/                ] ifFalse:[
+
+            self setFileDescriptor:masterFd mode:mode.
         ]
     ] ifFalse:[
         lastErrorNumber := OperatingSystem currentErrorNumber.
@@ -305,7 +303,7 @@
     commandString := aCommandString.
     buffered := false.
 
-    position := 1.
+    position := 0.
     hitEOF := false.
     binary := false.
     Lobby register:self.