* fixes #19292; fixes 21122; fixes putEnv and setEnv with vcc * add a test
This commit is contained in:
parent
40b5c4c4c3
commit
0aec095b26
3 changed files with 25 additions and 15 deletions
|
|
@ -63,9 +63,13 @@ when not defined(nimscript):
|
|||
import winlean
|
||||
when defined(nimPreviewSlimSystem):
|
||||
import std/widestrs
|
||||
proc c_wgetenv(varname: WideCString): WideCString {.importc: "_wgetenv",
|
||||
|
||||
type wchar_t {.importc: "wchar_t", header: "<stdlib.h>".} = int16
|
||||
proc c_wgetenv(varname: ptr wchar_t): ptr wchar_t {.importc: "_wgetenv",
|
||||
header: "<stdlib.h>".}
|
||||
proc getEnvImpl(env: cstring): WideCString = c_wgetenv(env.newWideCString)
|
||||
proc getEnvImpl(env: cstring): WideCString =
|
||||
let r: WideCString = env.newWideCString
|
||||
cast[WideCString](c_wgetenv(cast[ptr wchar_t](r)))
|
||||
else:
|
||||
proc c_getenv(env: cstring): cstring {.
|
||||
importc: "getenv", header: "<stdlib.h>".}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue