#4651 Fix marker presence check
parent
6e24218680
commit
892fb2d6e2
|
|
@ -5403,6 +5403,12 @@ void LLAppViewer::createErrorMarker(eLastExecEvent error_code) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool LLAppViewer::errorMarkerExists() const
|
||||||
|
{
|
||||||
|
std::string error_marker_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, ERROR_MARKER_FILE_NAME);
|
||||||
|
return LLAPRFile::isExist(error_marker_file, NULL, LL_APR_RB);
|
||||||
|
}
|
||||||
|
|
||||||
void LLAppViewer::outOfMemorySoftQuit()
|
void LLAppViewer::outOfMemorySoftQuit()
|
||||||
{
|
{
|
||||||
if (!mQuitRequested)
|
if (!mQuitRequested)
|
||||||
|
|
|
||||||
|
|
@ -250,6 +250,7 @@ public:
|
||||||
|
|
||||||
// Writes an error code into the error_marker file for use on next startup.
|
// Writes an error code into the error_marker file for use on next startup.
|
||||||
void createErrorMarker(eLastExecEvent error_code) const;
|
void createErrorMarker(eLastExecEvent error_code) const;
|
||||||
|
bool errorMarkerExists() const;
|
||||||
|
|
||||||
// Attempt a 'soft' quit with disconnect and saving of settings/cache.
|
// Attempt a 'soft' quit with disconnect and saving of settings/cache.
|
||||||
// Intended to be thread safe.
|
// Intended to be thread safe.
|
||||||
|
|
|
||||||
|
|
@ -173,16 +173,13 @@ namespace
|
||||||
<< '/' << loc.mV[2])));
|
<< '/' << loc.mV[2])));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!LLAppViewer::instance()->isSecondInstance())
|
LLAppViewer* app = LLAppViewer::instance();
|
||||||
|
if (!app->isSecondInstance() && !app->errorMarkerExists())
|
||||||
{
|
{
|
||||||
std::string error_marker_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, ERROR_MARKER_FILE_NAME);
|
// If marker doesn't exist, create a marker with 'other' code for next launch
|
||||||
if (!LLAPRFile::isExist(error_marker_file, NULL, LL_APR_RB))
|
// otherwise don't override existing file
|
||||||
{
|
// Any unmarked crashes will be considered as freezes
|
||||||
// If marker doesn't exist, create a marker with 'other' code for next launch
|
app->createErrorMarker(LAST_EXEC_OTHER_CRASH);
|
||||||
// otherwise don't override existing file
|
|
||||||
// Any unmarked crashes will be considered as freezes
|
|
||||||
LLAppViewer::instance()->createErrorMarker(LAST_EXEC_OTHER_CRASH);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} // MDSCB_EXCEPTIONCODE
|
} // MDSCB_EXCEPTIONCODE
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue