Skip to content

Commit fd13a94

Browse files
committed
io.launcher: fix timeouts for process streams.
1 parent 0b6ffdc commit fd13a94

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

basis/io/launcher/launcher.factor

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -215,8 +215,9 @@ PRIVATE>
215215
(process-reader) drop ; inline
216216

217217
: with-process-reader* ( desc encoding quot -- process status )
218-
[ (process-reader) ] dip '[ _ with-input-stream ] dip
219-
dup wait-for-process ; inline
218+
[ (process-reader) ] dip '[
219+
[ _ with-input-stream ] dip dup (wait-for-process)
220+
] with-timeout ; inline
220221

221222
: with-process-reader ( desc encoding quot -- )
222223
with-process-reader* check-success ; inline
@@ -241,8 +242,9 @@ PRIVATE>
241242
(process-writer) drop ; inline
242243

243244
: with-process-writer* ( desc encoding quot -- process status )
244-
[ (process-writer) ] dip '[ _ with-output-stream ] dip
245-
dup wait-for-process ; inline
245+
[ (process-writer) ] dip '[
246+
[ _ with-output-stream ] dip dup (wait-for-process)
247+
] with-timeout ; inline
246248

247249
: with-process-writer ( desc encoding quot -- )
248250
with-process-writer* check-success ; inline
@@ -272,8 +274,9 @@ PRIVATE>
272274
(process-stream) drop ; inline
273275

274276
: with-process-stream* ( desc encoding quot -- process status )
275-
[ (process-stream) ] dip '[ _ with-stream ] dip
276-
dup wait-for-process ; inline
277+
[ (process-stream) ] dip '[
278+
[ _ with-stream ] dip dup (wait-for-process)
279+
] with-timeout ; inline
277280

278281
: with-process-stream ( desc encoding quot -- )
279282
with-process-stream* check-success ; inline

0 commit comments

Comments
 (0)