// check that tmpdir is set and exists
struct stat st;
- if (!tmpdir || stat(tmpdir, &st) != 0)
+ if (!tmpdir || strlen(tmpdir) == 0 || stat(tmpdir, &st) != 0)
tmpdir = "/tmp";
return string(tmpdir);
return 1;
}
+ // GetTempDir()
+ unsetenv("TMPDIR");
+ equals(GetTempDir(), "/tmp");
+
+ setenv("TMPDIR", "", 1);
+ equals(GetTempDir(), "/tmp");
+
+ setenv("TMPDIR", "/not-there-no-really-not", 1);
+ equals(GetTempDir(), "/tmp");
+
+ setenv("TMPDIR", "/usr", 1);
+ equals(GetTempDir(), "/usr");
+
return 0;
}