aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/llvfs
diff options
context:
space:
mode:
authorAleric Inglewood2010-10-20 18:31:42 +0200
committerAleric Inglewood2010-10-20 18:31:42 +0200
commit2f4e17af336c9a399a0274b7836f40fc7ff56e21 (patch)
tree1c5c9d83bab4a602b58b439ffccd758ebca54836 /linden/indra/llvfs
parentUpdate WebKit Version in About floater. (diff)
downloadmeta-impy-2f4e17af336c9a399a0274b7836f40fc7ff56e21.zip
meta-impy-2f4e17af336c9a399a0274b7836f40fc7ff56e21.tar.gz
meta-impy-2f4e17af336c9a399a0274b7836f40fc7ff56e21.tar.bz2
meta-impy-2f4e17af336c9a399a0274b7836f40fc7ff56e21.tar.xz
LindenUserDir fixes.
The LindenUserDir (~/.imprudence/first_last/) cannot be initialized before the user logged in. However, several singletons (that only can be initialized once) depend on this directory for initialization. Therefore we have to take care not to instantiate those singletons until after the user logged in. With regard to webit, this fixes the browser_profile (cache and cookies) directory that the builtin browser uses.
Diffstat (limited to 'linden/indra/llvfs')
-rw-r--r--linden/indra/llvfs/lldir.cpp3
-rw-r--r--linden/indra/llvfs/lldir.h2
-rw-r--r--linden/indra/llvfs/lldir_linux.cpp2
-rw-r--r--linden/indra/llvfs/lldir_solaris.cpp2
4 files changed, 5 insertions, 4 deletions
diff --git a/linden/indra/llvfs/lldir.cpp b/linden/indra/llvfs/lldir.cpp
index 5567fdd..cd1e98d 100644
--- a/linden/indra/llvfs/lldir.cpp
+++ b/linden/indra/llvfs/lldir.cpp
@@ -192,8 +192,9 @@ const std::string &LLDir::getOSUserAppDir() const
192 return mOSUserAppDir; 192 return mOSUserAppDir;
193} 193}
194 194
195const std::string &LLDir::getLindenUserDir() const 195const std::string &LLDir::getLindenUserDir(bool empty_ok) const
196{ 196{
197 llassert(empty_ok || !mLindenUserDir.empty());
197 return mLindenUserDir; 198 return mLindenUserDir;
198} 199}
199 200
diff --git a/linden/indra/llvfs/lldir.h b/linden/indra/llvfs/lldir.h
index 55574d6..766f351 100644
--- a/linden/indra/llvfs/lldir.h
+++ b/linden/indra/llvfs/lldir.h
@@ -92,7 +92,7 @@ class LLDir
92 const std::string &getAppRODataDir() const; // Location of read-only data files 92 const std::string &getAppRODataDir() const; // Location of read-only data files
93 const std::string &getOSUserDir() const; // Location of the os-specific user dir 93 const std::string &getOSUserDir() const; // Location of the os-specific user dir
94 const std::string &getOSUserAppDir() const; // Location of the os-specific user app dir 94 const std::string &getOSUserAppDir() const; // Location of the os-specific user app dir
95 const std::string &getLindenUserDir() const; // Location of the Linden user dir. 95 const std::string &getLindenUserDir(bool empty_ok = false) const; // Location of the Linden user dir.
96 const std::string &getChatLogsDir() const; // Location of the chat logs dir. 96 const std::string &getChatLogsDir() const; // Location of the chat logs dir.
97 const std::string &getPerAccountChatLogsDir() const; // Location of the per account chat logs dir. 97 const std::string &getPerAccountChatLogsDir() const; // Location of the per account chat logs dir.
98 const std::string &getTempDir() const; // Common temporary directory 98 const std::string &getTempDir() const; // Common temporary directory
diff --git a/linden/indra/llvfs/lldir_linux.cpp b/linden/indra/llvfs/lldir_linux.cpp
index ec0a4f4..5f1eabb 100644
--- a/linden/indra/llvfs/lldir_linux.cpp
+++ b/linden/indra/llvfs/lldir_linux.cpp
@@ -97,7 +97,7 @@ LLDir_Linux::LLDir_Linux()
97 mAppRODataDir = tmp_str; 97 mAppRODataDir = tmp_str;
98 mOSUserDir = getCurrentUserHome(tmp_str); 98 mOSUserDir = getCurrentUserHome(tmp_str);
99 mOSUserAppDir = ""; 99 mOSUserAppDir = "";
100 mLindenUserDir = tmp_str; 100 mLindenUserDir = "";
101 101
102 char path [32]; /* Flawfinder: ignore */ 102 char path [32]; /* Flawfinder: ignore */
103 103
diff --git a/linden/indra/llvfs/lldir_solaris.cpp b/linden/indra/llvfs/lldir_solaris.cpp
index c647e2b..5132455 100644
--- a/linden/indra/llvfs/lldir_solaris.cpp
+++ b/linden/indra/llvfs/lldir_solaris.cpp
@@ -100,7 +100,7 @@ LLDir_Solaris::LLDir_Solaris()
100 mAppRODataDir = strdup(tmp_str); 100 mAppRODataDir = strdup(tmp_str);
101 mOSUserDir = getCurrentUserHome(tmp_str); 101 mOSUserDir = getCurrentUserHome(tmp_str);
102 mOSUserAppDir = ""; 102 mOSUserAppDir = "";
103 mLindenUserDir = tmp_str; 103 mLindenUserDir = "";
104 104
105 char path [LL_MAX_PATH]; /* Flawfinder: ignore */ 105 char path [LL_MAX_PATH]; /* Flawfinder: ignore */
106 106