summary refs log tree commit diff stats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/pure/osproc.nim9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/pure/osproc.nim b/lib/pure/osproc.nim
index aa2f6f937..93d737aa6 100644
--- a/lib/pure/osproc.nim
+++ b/lib/pure/osproc.nim
@@ -606,10 +606,11 @@ elif not defined(useNimRtl):
     optionPoStdErrToStdOut: bool
 
   proc startProcessAuxSpawn(data: TStartProcessData): TPid {.tags: [FExecIO, FReadEnv].}
-
   proc startProcessAuxFork(data: TStartProcessData): TPid {.tags: [FExecIO, FReadEnv].}
+  {.push stacktrace: off, profiler: off.}
   proc startProcessAfterFork(data: ptr TStartProcessData) {.
-    tags: [FExecIO, FReadEnv], noStackFrame, cdecl.}
+    tags: [FExecIO, FReadEnv], cdecl.}
+  {.pop.}
 
   proc startProcess(command: string,
                  workingDir: string = "",
@@ -774,7 +775,8 @@ elif not defined(useNimRtl):
 
     return pid
 
-  proc startProcessFail(data: ptr TStartProcessData) {.noStackFrame.} =
+  {.push stacktrace: off, profiler: off.}
+  proc startProcessFail(data: ptr TStartProcessData) =
     var error: cint = errno
     discard write(data.pErrorPipe[writeIdx], addr error, sizeof(error))
     exitnow(1)
@@ -811,6 +813,7 @@ elif not defined(useNimRtl):
       discard execve(data.sysCommand, data.sysArgs, data.sysEnv)
 
     startProcessFail(data)
+  {.pop}
 
   proc close(p: PProcess) =
     if p.inStream != nil: close(p.inStream)