diff --git a/renderdoc/os/posix/linux/linux_stringio.cpp b/renderdoc/os/posix/linux/linux_stringio.cpp index 1d81b9435..56c5b0bd8 100644 --- a/renderdoc/os/posix/linux/linux_stringio.cpp +++ b/renderdoc/os/posix/linux/linux_stringio.cpp @@ -596,7 +596,16 @@ rdcstr GetTempRootPath() rdcstr GetAppFolderFilename(const rdcstr &filename) { passwd *pw = getpwuid(getuid()); - const char *homedir = pw->pw_dir; + const char *homedir = pw ? pw->pw_dir : NULL; + + if(!homedir) + homedir = getenv("HOME"); + + if(!homedir) + { + RDCERR("Can't get HOME directory, defaulting to '/' instead"); + homedir = ""; + } rdcstr ret = rdcstr(homedir) + "/.renderdoc/";