diff options
author | Araq <rumpf_a@web.de> | 2019-04-06 19:13:10 +0200 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2019-04-06 19:13:10 +0200 |
commit | 9f5d9d19937a321cb7a9cec06a0a14ea07627f3d (patch) | |
tree | d0a5ffbfa34055225ecd9ebd9666c37a20d8c749 /lib/pure | |
parent | f1ee36692ace1f95ebce67c2b72b60e838946837 (diff) | |
download | Nim-9f5d9d19937a321cb7a9cec06a0a14ea07627f3d.tar.gz |
makes koch.nim sem'check with --newruntime
Diffstat (limited to 'lib/pure')
-rw-r--r-- | lib/pure/osproc.nim | 14 | ||||
-rw-r--r-- | lib/pure/strtabs.nim | 2 |
2 files changed, 11 insertions, 5 deletions
diff --git a/lib/pure/osproc.nim b/lib/pure/osproc.nim index 88df65aa9..0cdc3583d 100644 --- a/lib/pure/osproc.nim +++ b/lib/pure/osproc.nim @@ -57,8 +57,8 @@ type id: Handle else: inHandle, outHandle, errHandle: FileHandle - inStream, outStream, errStream: Stream id: Pid + inStream, outStream, errStream: owned(Stream) exitStatus: cint exitFlag: bool options: set[ProcessOption] @@ -724,15 +724,21 @@ when defined(Windows) and not defined(useNimRtl): proc inputStream(p: Process): Stream = streamAccess(p) - result = newFileHandleStream(p.inHandle) + if p.inStream == nil: + p.inStream = newFileHandleStream(p.inHandle) + result = p.inStream proc outputStream(p: Process): Stream = streamAccess(p) - result = newFileHandleStream(p.outHandle) + if p.outStream == nil: + p.outStream = newFileHandleStream(p.outHandle) + result = p.outStream proc errorStream(p: Process): Stream = streamAccess(p) - result = newFileHandleStream(p.errHandle) + if p.errStream == nil: + p.errStream = newFileHandleStream(p.errHandle) + result = p.errStream proc execCmd(command: string): int = var diff --git a/lib/pure/strtabs.nim b/lib/pure/strtabs.nim index 269fe11f7..0726eb15d 100644 --- a/lib/pure/strtabs.nim +++ b/lib/pure/strtabs.nim @@ -276,7 +276,7 @@ proc newStringTable*(keyValuePairs: varargs[string], inc(i, 2) proc newStringTable*(keyValuePairs: varargs[tuple[key, val: string]], - mode: StringTableMode = modeCaseSensitive): StringTableRef {. + mode: StringTableMode = modeCaseSensitive): owned(StringTableRef) {. rtlFunc, extern: "nst$1WithTableConstr".} = ## Creates a new string table with given `(key, value)` tuple pairs. ## |