diff --git a/lib/pure/osproc.nim b/lib/pure/osproc.nim index 44ec5b5484..76bd2dfe1d 100644 --- a/lib/pure/osproc.nim +++ b/lib/pure/osproc.nim @@ -841,15 +841,19 @@ elif not defined(useNimRtl): if data.workingDir.len > 0: setCurrentDir($data.workingDir) var pid: Pid + var err: OSErrorCode if data.optionPoUsePath: res = posix_spawnp(pid, data.sysCommand, fops, attr, data.sysArgs, data.sysEnv) + if res != 0'i32: err = osLastError() else: res = posix_spawn(pid, data.sysCommand, fops, attr, data.sysArgs, data.sysEnv) + if res != 0'i32: err = osLastError() discard posix_spawn_file_actions_destroy(fops) discard posix_spawnattr_destroy(attr) - chck res + if res != 0'i32: raiseOSError(err) + return pid else: proc startProcessAuxFork(data: StartProcessData): Pid = diff --git a/tools/nimsuggest/tester.nim b/tools/nimsuggest/tester.nim index f340c23e17..c3c20a5bad 100644 --- a/tools/nimsuggest/tester.nim +++ b/tools/nimsuggest/tester.nim @@ -11,7 +11,7 @@ type script: seq[(string, string)] const - curDir = when defined(windows): "" else: "./" + curDir = when defined(windows): "" else: "" DummyEof = "!EOF!" proc parseTest(filename: string): Test = diff --git a/tools/nimsuggest/tests/tstrutils.nim b/tools/nimsuggest/tests/tstrutils.nim index 667c1660c4..f5cda95053 100644 --- a/tools/nimsuggest/tests/tstrutils.nim +++ b/tools/nimsuggest/tests/tstrutils.nim @@ -1,6 +1,6 @@ discard """ -$nimsuggest --tester ../nim/lib/pure/strutils.nim ->def ../nim/lib/pure/strutils.nim:2300:6 +$nimsuggest --tester lib/pure/strutils.nim +>def lib/pure/strutils.nim:2300:6 def;;skTemplate;;system.doAssert;;proc (cond: bool, msg: string): typed;;*/lib/system.nim;;*;;9;;"";;100 """