diff options
| author | bors <bors@rust-lang.org> | 2014-05-09 12:56:35 -0700 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2014-05-09 12:56:35 -0700 |
| commit | 66f4f558cbe1df6a3ceff6c58ed7d994bed17cd5 (patch) | |
| tree | c74a31350a0090d631e216ecb5f6f1f4ce4fc752 /src/libstd | |
| parent | 47ecc2e8894d34d57cb2408012f41e578c145f01 (diff) | |
| parent | b55423a8527afbb126001e53d9bf5cced6db9462 (diff) | |
| download | rust-66f4f558cbe1df6a3ceff6c58ed7d994bed17cd5.tar.gz rust-66f4f558cbe1df6a3ceff6c58ed7d994bed17cd5.zip | |
auto merge of #14054 : luqmana/rust/at, r=alexcrichton
`/data/local/tmp` seems to be more common.
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/os.rs | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/libstd/os.rs b/src/libstd/os.rs index 66143b40d52..134cfa89a37 100644 --- a/src/libstd/os.rs +++ b/src/libstd/os.rs @@ -529,9 +529,9 @@ pub fn homedir() -> Option<Path> { * Returns the path to a temporary directory. * * On Unix, returns the value of the 'TMPDIR' environment variable if it is - * set and non-empty and '/tmp' otherwise. - * On Android, there is no global temporary folder (it is usually allocated - * per-app), hence returns '/data/tmp' which is commonly used. + * set, otherwise for non-Android it returns '/tmp'. If Android, since there + * is no global temporary folder (it is usually allocated per-app), we return + * '/data/local/tmp'. * * On Windows, returns the value of, in order, the 'TMP', 'TEMP', * 'USERPROFILE' environment variable if any are set and not the empty @@ -554,11 +554,13 @@ pub fn tmpdir() -> Path { #[cfg(unix)] fn lookup() -> Path { - if cfg!(target_os = "android") { - Path::new("/data/tmp") + let default = if cfg!(target_os = "android") { + Path::new("/data/local/tmp") } else { - getenv_nonempty("TMPDIR").unwrap_or(Path::new("/tmp")) - } + Path::new("/tmp") + }; + + getenv_nonempty("TMPDIR").unwrap_or(default) } #[cfg(windows)] |
