summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2019-09-24 14:27:21 -0400
committerOz Linden <oz@lindenlab.com>2019-09-24 14:27:21 -0400
commitd0619f8e476c1c5118ae926dfe1746f1dda986d8 (patch)
treece86cf3f6d4362041d50579beda45a54fc6d848f /indra
parent83ec9ebfbd602771dbc45c08fe203044b5ce3527 (diff)
improve fatal hook logging
Diffstat (limited to 'indra')
-rw-r--r--indra/llcommon/llerror.cpp4
-rw-r--r--indra/llcommon/llleap.cpp2
-rw-r--r--indra/newview/llappviewer.cpp7
3 files changed, 10 insertions, 3 deletions
diff --git a/indra/llcommon/llerror.cpp b/indra/llcommon/llerror.cpp
index da68117ff5..df8443bd7a 100644
--- a/indra/llcommon/llerror.cpp
+++ b/indra/llcommon/llerror.cpp
@@ -723,13 +723,13 @@ namespace LLError
{
SettingsConfigPtr s = Settings::getInstance()->getSettingsConfig();
s->mFatalHook = fatal_hook;
- LL_DEBUGS("FatalHook") << "set fatal hook to " << fatal_hook << LL_ENDL;
+ LL_DEBUGS("FatalHook") << "set fatal hook to " << reinterpret_cast<void*>(fatal_hook) << LL_ENDL;
}
FatalHook getFatalHook()
{
SettingsConfigPtr s = Settings::getInstance()->getSettingsConfig();
- LL_DEBUGS("FatalHook") << "read fatal hook " << s->mFatalHook << LL_ENDL;
+ LL_DEBUGS("FatalHook") << "read fatal hook " << reinterpret_cast<void*>(s->mFatalHook) << LL_ENDL;
return s->mFatalHook;
}
diff --git a/indra/llcommon/llleap.cpp b/indra/llcommon/llleap.cpp
index 161d25bc34..bb32c73d04 100644
--- a/indra/llcommon/llleap.cpp
+++ b/indra/llcommon/llleap.cpp
@@ -67,6 +67,7 @@ public:
// this class or method name.
mListener(new LLLeapListener(boost::bind(&LLLeapImpl::connect, this, _1, _2)))
{
+ LL_DEBUGS("FatalHook") << "previous fatal hook was " <<reinterpret_cast<void*>(mPrevFatalHook) << LL_ENDL;
// Rule out unpopulated Params block
if (! cparams.executable.isProvided())
{
@@ -398,6 +399,7 @@ public:
}
// forward the call to the previous FatalHook, default to crashing if there isn't one
+ LL_DEBUGS("FatalHook") << "end" << LL_ENDL;
return mPrevFatalHook ? mPrevFatalHook(error) : LLError::ERR_CRASH;
}
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 35f9d7f4fd..9258d1a219 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -2166,7 +2166,8 @@ void LLAppViewer::initLoggingAndGetLastDuration()
LLError::initForApplication( gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "")
,gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, "")
);
- LLError::setFatalHook(fatalErrorHook);
+
+ // TBD fatal hook belongs here
// Remove the last ".old" log file.
std::string old_log_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,
@@ -2228,6 +2229,10 @@ void LLAppViewer::initLoggingAndGetLastDuration()
{
LL_WARNS("MarkerFile") << duration_log_msg << LL_ENDL;
}
+
+ // TBD - temporary location for fatal hook (should be above, but for now it logs...)
+ LLError::setFatalHook(fatalErrorHook);
+
}
bool LLAppViewer::loadSettingsFromDirectory(const std::string& location_key,