diff options
author | Campbell Barton <ideasman42@gmail.com> | 2008-02-13 16:55:22 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2008-02-13 16:55:22 +0300 |
commit | bc9848f7e67c3e695403179f8bcdb78b0e5764a3 (patch) | |
tree | 18561a90fa2660b5227a0c73c1d519d8a58cfab3 /source/blender/blenlib/intern/util.c | |
parent | e26b5aa9c47fbc604c23efe9100940ff68d8ddbe (diff) |
Added a global string to be used for the tempdir. since the user preference is not loaded in background mode and the user preference is not validated and has no fallback.
'btempdir' is set with BLI_where_is_temp() - This tries to use U.tempdir but falls back to $TEMP or /tmp/
Diffstat (limited to 'source/blender/blenlib/intern/util.c')
-rw-r--r-- | source/blender/blenlib/intern/util.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/source/blender/blenlib/intern/util.c b/source/blender/blenlib/intern/util.c index d0f58a50eb9..f849b022e6e 100644 --- a/source/blender/blenlib/intern/util.c +++ b/source/blender/blenlib/intern/util.c @@ -44,8 +44,10 @@ #include "MEM_guardedalloc.h" -#include "BLI_blenlib.h" #include "DNA_listBase.h" +#include "DNA_userdef_types.h" + +#include "BLI_blenlib.h" #include "BLI_storage.h" #include "BLI_storage_types.h" #include "BLI_dynamiclist.h" @@ -1605,6 +1607,29 @@ void BLI_where_am_i(char *fullname, const char *name) } } +void BLI_where_is_temp(char *fullname, int usertemp) +{ + fullname[0] = '\0'; + + if (usertemp && BLI_exists(U.tempdir)) { + strcpy(fullname, U.tempdir); + } + + if (fullname[0] == '\0') { + char *tmp = getenv("TEMP"); + if (tmp && BLI_exists(tmp)) { + strcpy(fullname, tmp); + } + } + + if (fullname[0] == '\0') { + strcpy(fullname, "/tmp/"); + } else { + /* add a trailing slash if needed */ + BLI_add_slash(fullname); + } +} + /* * returns absolute path to the app bundle * only useful on OS X |