about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-05-09 12:56:35 -0700
committerbors <bors@rust-lang.org>2014-05-09 12:56:35 -0700
commit66f4f558cbe1df6a3ceff6c58ed7d994bed17cd5 (patch)
treec74a31350a0090d631e216ecb5f6f1f4ce4fc752 /src/libstd
parent47ecc2e8894d34d57cb2408012f41e578c145f01 (diff)
parentb55423a8527afbb126001e53d9bf5cced6db9462 (diff)
downloadrust-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.rs16
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)]