summary refs log tree commit diff stats
path: root/lib/pure
diff options
context:
space:
mode:
authormodk <github@modk.org>2015-01-26 00:06:43 +0100
committermodk <github@modk.org>2015-01-26 00:06:43 +0100
commit601b262a8dc98b36f06585bd432396af85981a99 (patch)
tree412709bf2b31e0b559c8ca827b2dc5097a10675e /lib/pure
parent67e489d4e5a1534e19a0d0a507be874acd64815b (diff)
downloadNim-601b262a8dc98b36f06585bd432396af85981a99.tar.gz
Fixes parallel build on FreeBSD
Diffstat (limited to 'lib/pure')
-rw-r--r--lib/pure/osproc.nim5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/pure/osproc.nim b/lib/pure/osproc.nim
index 20a0c401e..cc2dfc4cd 100644
--- a/lib/pure/osproc.nim
+++ b/lib/pure/osproc.nim
@@ -848,7 +848,10 @@ elif not defined(useNimRtl):
     if kill(p.id, SIGCONT) != 0'i32: raiseOsError(osLastError())
 
   proc running(p: Process): bool =
-    var ret = waitpid(p.id, p.exitCode, WNOHANG)
+    var status : cint
+    var ret = waitpid(p.id, status, WNOHANG)
+    if WIFEXITED(status):
+      p.exitCode = status
     if ret == 0: return true # Can't establish status. Assume running.
     result = ret == int(p.id)