summaryrefslogtreecommitdiff
path: root/indra/newview/llappviewerwin32.cpp
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2018-06-28 12:39:42 -0400
committerNat Goodspeed <nat@lindenlab.com>2018-06-28 12:39:42 -0400
commitf6e7893a6e34190e8080d289a5f89d7f9c47d583 (patch)
treeaa509218b6fa486a6f41101703e7796b2ed5e8ad /indra/newview/llappviewerwin32.cpp
parente766d9e697eae29b3f82106603843efbeb7aa01b (diff)
MAINT-8797: Resurrect BugSplat crash reporting on Windows.
The Breakpad symbol-file upload in the viewer's build.sh was failing on BugSplat builds since we weren't generating Breakpad symbol files. That upload was conditional on RELEASE_CRASH_REPORTING, so my first approach was to set RELEASE_CRASH_REPORTING=OFF for BugSplat builds. Unfortunately that symbol also propagates down into C++ compiles, and in llappviewerwin32.cpp, both Breakpad and BugSplat crash reporting is conditional on it. So that change inadvertently turned off the C++ logic to engage BugSplat. Stop forcing RELEASE_CRASH_REPORTING=OFF for BugSplat builds. Instead, make the Breakpad symbol-file upload check the BUGSPLAT_DB variable as well. Add #pragma messages to llappviewerwin32.cpp so we can detect whether it's being built for Breakpad or BugSplat or neither.
Diffstat (limited to 'indra/newview/llappviewerwin32.cpp')
-rw-r--r--indra/newview/llappviewerwin32.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/indra/newview/llappviewerwin32.cpp b/indra/newview/llappviewerwin32.cpp
index 3efc94d7b5..247b94db3e 100644
--- a/indra/newview/llappviewerwin32.cpp
+++ b/indra/newview/llappviewerwin32.cpp
@@ -559,11 +559,13 @@ bool LLAppViewerWin32::init()
#if LL_SEND_CRASH_REPORTS
#if ! defined(LL_BUGSPLAT)
+#pragma message("Building without BugSplat")
LLAppViewer* pApp = LLAppViewer::instance();
pApp->initCrashReporting();
#else // LL_BUGSPLAT
+#pragma message("Building with BugSplat")
std::string build_data_fname(
gDirUtilp->getExpandedFilename(LL_PATH_EXECUTABLE, "build_data.json"));
@@ -579,7 +581,7 @@ bool LLAppViewerWin32::init()
Json::Value build_data;
if (! reader.parse(inf, build_data, false)) // don't collect comments
{
- // gah, the typo is baked into their API
+ // gah, the typo is baked into Json::Reader API
LL_WARNS() << "Can't initialize BugSplat, can't parse '" << build_data_fname
<< "': " << reader.getFormatedErrorMessages() << LL_ENDL;
}
@@ -609,7 +611,7 @@ bool LLAppViewerWin32::init()
// engage stringize() overload that converts from wstring
LL_INFOS() << "Engaged BugSplat(" << LL_TO_STRING(LL_VIEWER_CHANNEL)
- << stringize(version_string) << ')' << LL_ENDL;
+ << ' ' << stringize(version_string) << ')' << LL_ENDL;
} // got BugSplat_DB
} // parsed build_data.json
} // opened build_data.json