diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2017-08-30 11:08:49 +0200 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2017-08-30 11:08:49 +0200 |
commit | 80fab1d861f7801b9ccaac6ef4d7ff38defa207b (patch) | |
tree | 5e0c193e683a0b95fd59c8c18d75b051a677e1be /lib/pure/ospaths.nim | |
parent | eb8371012c359e387a7c73b97ef333c783086641 (diff) | |
download | Nim-80fab1d861f7801b9ccaac6ef4d7ff38defa207b.tar.gz |
make ospaths compile for Android again, simplify its implementation, added a disclaimer
Diffstat (limited to 'lib/pure/ospaths.nim')
-rw-r--r-- | lib/pure/ospaths.nim | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/lib/pure/ospaths.nim b/lib/pure/ospaths.nim index 3cd90056a..4e76e4e18 100644 --- a/lib/pure/ospaths.nim +++ b/lib/pure/ospaths.nim @@ -528,28 +528,20 @@ when declared(getEnv) or defined(nimscript): elif getEnv("XDG_CONFIG_DIR"): return string(getEnv("XDG_CONFIG_DIR")) & "/" else: return string(getEnv("HOME")) & "/.config/" - when defined(android): - when declared(os): - {.pragma: getTempDirEffects, tags: [ReadEnvEffect, ReadIOEffect, WriteDirEffect].} - else: - {.pragma: getTempDirEffects, tags: [ReadEnvEffect, ReadIOEffect].} - elif defined(windows): - {.pragma: getTempDirEffects, tags: [ReadEnvEffect, ReadIOEffect].} - else: - {.pragma: getTempDirEffects, tags: [ReadIOEffect].} - proc getTempDir*(): string {.rtl, extern: "nos$1", - getTempDirEffects.} = + tags: [ReadEnvEffect, ReadIOEffect].} = ## Returns the temporary directory of the current user for applications to ## save temporary files in. + ## + ## **Please do not use this**: On Android, it currently + ## returns ``getHomeDir()``, and on other Unix based systems it can cause + ## security problems too. That said, you can override this implementation + ## by adding ``-d:tempDir=mytempname`` to your compiler invokation. when defined(tempDir): const tempDir {.strdefine.}: string = nil return tempDir elif defined(windows): return string(getEnv("TEMP")) & "\\" - elif defined(android): - let tempDir = getHomeDir() / "nimtempfs" - createDir(tempDir) - return tempDir + elif defined(android): return getHomeDir() else: return "/tmp/" proc expandTilde*(path: string): string {. |