summaryrefslogtreecommitdiff
path: root/src/library
diff options
context:
space:
mode:
authorDeclan Conlon <dconlon@atlassian.com>2012-10-10 11:34:26 +1100
committerDeclan Conlon <dconlon@atlassian.com>2012-10-26 12:06:44 +1100
commitc7c79c83b5a7560df60ba9b4578bbce02514a22a (patch)
tree6c064a8e2833e0c3d2e58f05a0b19956f572bf7d /src/library
parent34d021ad2021d3dbedc8b6fe20f7f0f6d1569757 (diff)
downloadscala-c7c79c83b5a7560df60ba9b4578bbce02514a22a.tar.gz
scala-c7c79c83b5a7560df60ba9b4578bbce02514a22a.tar.bz2
scala-c7c79c83b5a7560df60ba9b4578bbce02514a22a.zip
SI-6488: Stop I/O threads prior to Process destruction
Diffstat (limited to 'src/library')
-rw-r--r--src/library/scala/sys/process/ProcessImpl.scala5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/library/scala/sys/process/ProcessImpl.scala b/src/library/scala/sys/process/ProcessImpl.scala
index cdf7d72caa..84ef5f277b 100644
--- a/src/library/scala/sys/process/ProcessImpl.scala
+++ b/src/library/scala/sys/process/ProcessImpl.scala
@@ -222,7 +222,10 @@ private[process] trait ProcessImpl {
p.exitValue()
}
override def destroy() = {
- try p.destroy()
+ try{
+ outputThreads foreach (_.stop())
+ p.destroy()
+ }
finally inputThread.interrupt()
}
}