summaryrefslogtreecommitdiff
path: root/indra/llcommon/llerror.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llcommon/llerror.cpp')
-rw-r--r--indra/llcommon/llerror.cpp37
1 files changed, 11 insertions, 26 deletions
diff --git a/indra/llcommon/llerror.cpp b/indra/llcommon/llerror.cpp
index e6407ecf22..2fe9775e10 100644
--- a/indra/llcommon/llerror.cpp
+++ b/indra/llcommon/llerror.cpp
@@ -312,7 +312,7 @@ namespace
LOG_CLASS(LogControlFile);
public:
- static LogControlFile& fromDirectory(const std::string& dir);
+ static LogControlFile& fromDirectory(const std::string& user_dir, const std::string& app_dir);
virtual bool loadFile();
@@ -322,13 +322,12 @@ namespace
{ }
};
- LogControlFile& LogControlFile::fromDirectory(const std::string& dir)
+ LogControlFile& LogControlFile::fromDirectory(const std::string& user_dir, const std::string& app_dir)
{
- std::string dirBase = dir + "/";
- // NB: We have no abstraction in llcommon for the "proper"
- // delimiter but it turns out that "/" works on all three platforms
+ // NB: We have no abstraction in llcommon for the "proper"
+ // delimiter but it turns out that "/" works on all three platforms
- std::string file = dirBase + "logcontrol-dev.xml";
+ std::string file = user_dir + "/logcontrol-dev.xml";
llstat stat_info;
if (LLFile::stat(file, &stat_info)) {
@@ -336,7 +335,7 @@ namespace
// if it doesn't exist. LLFile has no better abstraction for
// testing for file existence.
- file = dirBase + "logcontrol.xml";
+ file = app_dir + "/logcontrol.xml";
}
return * new LogControlFile(file);
// NB: This instance is never freed
@@ -363,7 +362,7 @@ namespace
}
LLError::configure(configuration);
- LL_INFOS() << "logging reconfigured from " << filename() << LL_ENDL;
+ LL_INFOS("LogControlFile") << "logging reconfigured from " << filename() << LL_ENDL;
return true;
}
@@ -615,7 +614,7 @@ namespace
}
- void commonInit(const std::string& dir, bool log_to_stderr = true)
+ void commonInit(const std::string& user_dir, const std::string& app_dir, bool log_to_stderr = true)
{
LLError::Settings::getInstance()->reset();
@@ -635,7 +634,7 @@ namespace
LLError::addRecorder(recordToWinDebug);
#endif
- LogControlFile& e = LogControlFile::fromDirectory(dir);
+ LogControlFile& e = LogControlFile::fromDirectory(user_dir, app_dir);
// NOTE: We want to explicitly load the file before we add it to the event timer
// that checks for changes to the file. Else, we're not actually loading the file yet,
@@ -651,23 +650,9 @@ namespace
namespace LLError
{
- void initForServer(const std::string& identity)
+ void initForApplication(const std::string& user_dir, const std::string& app_dir, bool log_to_stderr)
{
- std::string dir = "/opt/linden/etc";
- if (LLApp::instance())
- {
- dir = LLApp::instance()->getOption("configdir").asString();
- }
- commonInit(dir);
-#if !LL_WINDOWS
- LLError::RecorderPtr recordToSyslog(new RecordToSyslog(identity));
- addRecorder(recordToSyslog);
-#endif
- }
-
- void initForApplication(const std::string& dir, bool log_to_stderr)
- {
- commonInit(dir, log_to_stderr);
+ commonInit(user_dir, app_dir, log_to_stderr);
}
void setPrintLocation(bool print)