diff options
author | Michael Vogt <mvo@debian.org> | 2013-12-22 22:15:52 +0100 |
---|---|---|
committer | Michael Vogt <mvo@debian.org> | 2013-12-22 22:15:52 +0100 |
commit | 68e0172140872d8044b3c768a6bea3ac58d426c4 (patch) | |
tree | 8562f0708130ee1b628e256c49be31f8c1c7e1b2 /apt-pkg/contrib/fileutl.cc | |
parent | 38beb8b5936e9d85a5bb99bf3860f082bbe34439 (diff) |
factor GetTempDir out
Diffstat (limited to 'apt-pkg/contrib/fileutl.cc')
-rw-r--r-- | apt-pkg/contrib/fileutl.cc | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/apt-pkg/contrib/fileutl.cc b/apt-pkg/contrib/fileutl.cc index 7fbe4d604..847d8b47f 100644 --- a/apt-pkg/contrib/fileutl.cc +++ b/apt-pkg/contrib/fileutl.cc @@ -1827,3 +1827,20 @@ std::vector<std::string> Glob(std::string const &pattern, int flags) return result; } /*}}}*/ + +std::string GetTempDir() +{ + const char *tmpdir = getenv("TMPDIR"); + +#ifdef P_tmpdir + if (!tmpdir) + tmpdir = P_tmpdir; +#endif + + // check that tmpdir is set and exists + struct stat st; + if (!tmpdir || stat(tmpdir, &st) != 0) + tmpdir = "/tmp"; + + return string(tmpdir); +} |