From a7c4707ed223f2d0c5a31b2d119d1d92b3d00922 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 28 Jun 2017 21:21:14 +0300 Subject: Dont show assert if XDG paths config not exists. --- src/fs/paths.cpp | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/fs/paths.cpp b/src/fs/paths.cpp index 22f227650..659fc49e4 100644 --- a/src/fs/paths.cpp +++ b/src/fs/paths.cpp @@ -206,21 +206,24 @@ std::string getPicturesDir() file = pathJoin(xdg, "user-dirs.dirs"); } - StringVect arr; - Files::loadTextFileLocal(file, arr); - FOR_EACH (StringVectCIter, it, arr) + if (Files::existsLocal(file)) { - std::string str = *it; - if (findCutFirst(str, "XDG_PICTURES_DIR=\"")) + StringVect arr; + Files::loadTextFileLocal(file, arr); + FOR_EACH (StringVectCIter, it, arr) { - str = str.substr(0, str.size() - 1); - // use hack to replace $HOME var. - // if in string other vars, fallback to default path - replaceAll(str, "$HOME/", VirtFs::getUserDir()); - str = getRealPath(str); - if (str.empty()) - str = pathJoin(VirtFs::getUserDir(), "Desktop"); - return str; + std::string str = *it; + if (findCutFirst(str, "XDG_PICTURES_DIR=\"")) + { + str = str.substr(0, str.size() - 1); + // use hack to replace $HOME var. + // if in string other vars, fallback to default path + replaceAll(str, "$HOME/", VirtFs::getUserDir()); + str = getRealPath(str); + if (str.empty()) + str = pathJoin(VirtFs::getUserDir(), "Desktop"); + return str; + } } } #endif // WIN32 -- cgit v1.2.3-60-g2f50