summaryrefslogtreecommitdiff
path: root/indra/llfilesystem/lldir_mac.cpp
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2024-05-15 12:18:31 -0400
committerNat Goodspeed <nat@lindenlab.com>2024-05-15 12:18:31 -0400
commit7ccf02515ad3f9e3bf795d651fe4b3c0d773f353 (patch)
treec4adc897c07f652e617e91fbf41c12b823acc808 /indra/llfilesystem/lldir_mac.cpp
parent1abf5f18d6afc7ae9e1b1562b92e5c1ce33b722f (diff)
parente7eced3c87310b15ac20cc3cd470d67686104a14 (diff)
Merge commit 'e7eced3' into lua-timers for whitespace fixes.
Diffstat (limited to 'indra/llfilesystem/lldir_mac.cpp')
-rw-r--r--indra/llfilesystem/lldir_mac.cpp148
1 files changed, 74 insertions, 74 deletions
diff --git a/indra/llfilesystem/lldir_mac.cpp b/indra/llfilesystem/lldir_mac.cpp
index 9ad8e274b6..b9560c8234 100644
--- a/indra/llfilesystem/lldir_mac.cpp
+++ b/indra/llfilesystem/lldir_mac.cpp
@@ -1,28 +1,28 @@
-/**
+/**
* @file lldir_mac.cpp
* @brief Implementation of directory utilities for Mac OS X
*
* $LicenseInfo:firstyear=2002&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
- *
+ *
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
- *
+ *
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
- *
+ *
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
+ *
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
- */
+ */
#if LL_DARWIN
@@ -40,17 +40,17 @@
// --------------------------------------------------------------------------------
-static bool CreateDirectory(const std::string &parent,
+static bool CreateDirectory(const std::string &parent,
const std::string &child,
std::string *fullname)
{
-
+
boost::filesystem::path p(parent);
p /= child;
-
+
if (fullname)
*fullname = std::string(p.string());
-
+
if (! boost::filesystem::create_directory(p))
{
return (boost::filesystem::is_directory(p));
@@ -62,95 +62,95 @@ static bool CreateDirectory(const std::string &parent,
LLDir_Mac::LLDir_Mac()
{
- mDirDelimiter = "/";
+ mDirDelimiter = "/";
const std::string secondLifeString = "SecondLife";
-
+
std::string executablepathstr = getSystemExecutableFolder();
//NOTE: LLINFOS/LLERRS will not output to log here. The streams are not initialized.
-
- if (!executablepathstr.empty())
- {
- // mExecutablePathAndName
- mExecutablePathAndName = executablepathstr;
-
+
+ if (!executablepathstr.empty())
+ {
+ // mExecutablePathAndName
+ mExecutablePathAndName = executablepathstr;
+
boost::filesystem::path executablepath(executablepathstr);
-
+
# ifndef BOOST_SYSTEM_NO_DEPRECATED
#endif
mExecutableFilename = executablepath.filename().string();
mExecutableDir = executablepath.parent_path().string();
-
- // mAppRODataDir
+
+ // mAppRODataDir
std::string resourcepath = getSystemResourceFolder();
mAppRODataDir = resourcepath;
-
- // *NOTE: When running in a dev tree, use the copy of
- // skins in indra/newview/ rather than in the application bundle. This
- // mirrors Windows dev environment behavior and allows direct checkin
- // of edited skins/xui files. JC
-
- // MBW -- This keeps the mac application from finding other things.
- // If this is really for skins, it should JUST apply to skins.
-
- std::string::size_type build_dir_pos = mExecutableDir.rfind("/build-darwin-");
- if (build_dir_pos != std::string::npos)
- {
- // ...we're in a dev checkout
- mSkinBaseDir = mExecutableDir.substr(0, build_dir_pos)
- + "/indra/newview/skins";
- LL_INFOS() << "Running in dev checkout with mSkinBaseDir "
- << mSkinBaseDir << LL_ENDL;
- }
- else
- {
- // ...normal installation running
- mSkinBaseDir = mAppRODataDir + mDirDelimiter + "skins";
- }
-
- // mOSUserDir
+
+ // *NOTE: When running in a dev tree, use the copy of
+ // skins in indra/newview/ rather than in the application bundle. This
+ // mirrors Windows dev environment behavior and allows direct checkin
+ // of edited skins/xui files. JC
+
+ // MBW -- This keeps the mac application from finding other things.
+ // If this is really for skins, it should JUST apply to skins.
+
+ std::string::size_type build_dir_pos = mExecutableDir.rfind("/build-darwin-");
+ if (build_dir_pos != std::string::npos)
+ {
+ // ...we're in a dev checkout
+ mSkinBaseDir = mExecutableDir.substr(0, build_dir_pos)
+ + "/indra/newview/skins";
+ LL_INFOS() << "Running in dev checkout with mSkinBaseDir "
+ << mSkinBaseDir << LL_ENDL;
+ }
+ else
+ {
+ // ...normal installation running
+ mSkinBaseDir = mAppRODataDir + mDirDelimiter + "skins";
+ }
+
+ // mOSUserDir
std::string appdir = getSystemApplicationSupportFolder();
std::string rootdir;
//Create root directory
if (CreateDirectory(appdir, secondLifeString, &rootdir))
{
-
+
// Save the full path to the folder
mOSUserDir = rootdir;
-
+
// Create our sub-dirs
CreateDirectory(rootdir, std::string("data"), NULL);
CreateDirectory(rootdir, std::string("logs"), NULL);
CreateDirectory(rootdir, std::string("user_settings"), NULL);
CreateDirectory(rootdir, std::string("browser_profile"), NULL);
}
-
- //mOSCacheDir
+
+ //mOSCacheDir
std::string cachedir = getSystemCacheFolder();
if (!cachedir.empty())
- {
+ {
mOSCacheDir = cachedir;
//TODO: This changes from ~/Library/Cache/Secondlife to ~/Library/Cache/com.app.secondlife/Secondlife. Last dir level could go away.
CreateDirectory(mOSCacheDir, secondLifeString, NULL);
- }
-
- // mOSUserAppDir
- mOSUserAppDir = mOSUserDir;
-
- // mTempDir
+ }
+
+ // mOSUserAppDir
+ mOSUserAppDir = mOSUserDir;
+
+ // mTempDir
//Aura 120920 boost::filesystem::temp_directory_path() not yet implemented on mac. :(
std::string tmpdir = getSystemTempFolder();
if (!tmpdir.empty())
{
CreateDirectory(tmpdir, secondLifeString, &mTempDir);
}
-
- mWorkingDir = getCurPath();
- mLLPluginDir = mAppRODataDir + mDirDelimiter + "llplugin";
- }
+ mWorkingDir = getCurPath();
+
+ mLLPluginDir = mAppRODataDir + mDirDelimiter + "llplugin";
+ }
}
LLDir_Mac::~LLDir_Mac()
@@ -161,20 +161,20 @@ LLDir_Mac::~LLDir_Mac()
void LLDir_Mac::initAppDirs(const std::string &app_name,
- const std::string& app_read_only_data_dir)
+ const std::string& app_read_only_data_dir)
{
- // Allow override so test apps can read newview directory
- if (!app_read_only_data_dir.empty())
- {
- mAppRODataDir = app_read_only_data_dir;
- mSkinBaseDir = add(mAppRODataDir, "skins");
- }
- mCAFile = add(mAppRODataDir, "ca-bundle.crt");
+ // Allow override so test apps can read newview directory
+ if (!app_read_only_data_dir.empty())
+ {
+ mAppRODataDir = app_read_only_data_dir;
+ mSkinBaseDir = add(mAppRODataDir, "skins");
+ }
+ mCAFile = add(mAppRODataDir, "ca-bundle.crt");
}
std::string LLDir_Mac::getCurPath()
{
- return boost::filesystem::path( boost::filesystem::current_path() ).string();
+ return boost::filesystem::path( boost::filesystem::current_path() ).string();
}
@@ -187,14 +187,14 @@ bool LLDir_Mac::fileExists(const std::string &filename) const
/*virtual*/ std::string LLDir_Mac::getLLPluginLauncher()
{
- return gDirUtilp->getAppRODataDir() + gDirUtilp->getDirDelimiter() +
- "SLPlugin.app/Contents/MacOS/SLPlugin";
+ return gDirUtilp->getAppRODataDir() + gDirUtilp->getDirDelimiter() +
+ "SLPlugin.app/Contents/MacOS/SLPlugin";
}
/*virtual*/ std::string LLDir_Mac::getLLPluginFilename(std::string base_name)
{
- return gDirUtilp->getLLPluginDir() + gDirUtilp->getDirDelimiter() +
- base_name + ".dylib";
+ return gDirUtilp->getLLPluginDir() + gDirUtilp->getDirDelimiter() +
+ base_name + ".dylib";
}