Commit Graph

140 Commits (b18f328c08a0af7032c24843cf1d045eea73ad33)

Author SHA1 Message Date
Andrey Lihatskiy 2ded530f93 Merge branch 'master' into DRTVWR-522-maint
# Conflicts:
#	doc/contributions.txt
#	indra/newview/llappcorehttp.cpp
#	indra/newview/llappcorehttp.h
2021-07-19 22:20:45 +03:00
Andrey Lihatskiy 2922c59316 Merge branch 'sl-10297' into DRTVWR-516-maint 2021-05-21 20:31:53 +03:00
Nat Goodspeed fd1545197a SL-10297: Merge branch 'sl-10297-oz' into sl-10297.
Bring in Oz's tweaks to the way BugSplat is engaged and tested, plus a few
other miscellaneous goodies.
2021-05-12 13:56:19 -04:00
Andrey Kleshchev ed98ebb811 SL-14961 Coroutine crash was not reported to bugsplat 2021-03-13 11:21:01 +02:00
Andrey Kleshchev 4076208a72 SL-14961 Bugsplat logging 2021-03-12 00:25:53 +02:00
Andrey Lihatskiy 19ff86fabd Merge branch 'master' into DRTVWR-522-maint 2021-03-09 22:00:08 +02:00
Brad Payne (Vir Linden) c83e740ef9 Revert "Merge branch 'master' of https://bitbucket.org/lindenlab/viewer into DRTVWR-519"
This reverts commit e61f485a04, reversing
changes made to 00c47d079f.
2021-03-08 13:56:16 +00:00
Andrey Lihatskiy be83a004db Merge branch 'master' into DRTVWR-522-maint 2021-03-02 21:42:51 +02:00
Andrey Kleshchev 663e45c7ea SL-1028 Bugsplat based windows viewers should not overwrite log files from main instance 2021-01-11 20:43:02 +02:00
Callum Prentice 38faec3b11 Merge branch 'master' into DRTVWR-519 2020-09-22 13:07:39 -07:00
Callum Prentice 8c289ec126 Effective rename of DRTVWR-506-simple since there is no way to rename a branch. Cloned canonical viewer into DRTVWR-519, copied over the files that changed from DRTVWR-506-simple and pushed back. Once I am satisfied everything is correct, DRTVWR-506-simple will be removed 2020-09-11 10:00:17 -07:00
Oz Linden a9d271c5a2 SL-10297 merged 6.4.7 2020-08-24 13:11:07 -04:00
Andrey Lihatskiy 9406b757a3 Merge branch 'DRTVWR-501-maint' into DRTVWR-503-maint
# Conflicts:
#	indra/cmake/DirectX.cmake
#	indra/newview/llviewerparcelmedia.cpp
#	indra/newview/viewer_manifest.py
2020-08-11 01:34:13 +03:00
Nat Goodspeed 01128f9f94 DRTVWR-476, SL-13528: Use freopen_s() instead of assigning stderr.
The llappviewerwin32.cpp create_console() function called by
LLAppViewerWin32::initConsole() used to assign *stderr = *(new FILE* value),
and so forth for stdout and stdin. That dubious tactic no longer works with
the new Windows CRT introduced with VS 2015. freopen_s() works much better.
2020-07-01 16:29:59 -04:00
Nat Goodspeed d8649dbb8a SL-13361: Enable color processing on Windows 10 debug console.
(cherry picked from commit 0b61150e69)
2020-07-01 13:38:05 -04:00
Nat Goodspeed 4708662091 SL-13361: Distill redundant create_console() code to set_stream().
There are separate stanzas in llappviewerwin32.cpp's create_console() function
for each of STD_INPUT_HANDLE, STD_OUTPUT_HANDLE and STD_ERROR_HANDLE. SL-13361
wants to add more code to each. Factor out new local set_stream() function and
make create_console() call it three times.

(cherry picked from commit 13b78a0c5a)
2020-07-01 13:33:29 -04:00
Nat Goodspeed f71c71fe42 DRTVWR-476: Fix _open_osfhandle() param from long to intptr_t.
The Microsoft _open_osfhandle() opens a HANDLE to produce a C-style int file
descriptor suitable for passing to _fdopen(). We used to cast the HANDLEs
returned by GetStdHandle() to long to pass to _open_osfhandle(). Since HANDLE
is an alias for a pointer, this no longer works.

Fortunately _open_osfhandle() now accepts intptr_t, so we can change the
relevant GetStdHandle() calls. (But why not simply accept HANDLE in the first
place?)
2020-03-25 16:12:46 -04:00
Mnikolenko Productengine 672fa8002d SL-1431 settings_per_account.xml file should be attached to crashreport 2020-03-24 19:25:48 +02:00
Oz Linden 66970f2a8c fix spurious per-frame warning about signal handlers in Windows 2019-09-25 12:58:43 -04:00
Oz Linden 4c525832cc remove old crash logger more 2019-06-12 08:49:59 -04:00
andreykproductengine c4a879f5d4 SL-11362 not all special character work in command line parameters 2019-06-05 21:33:23 +03:00
Oz Linden e711376cc7 assorted cleanup 2019-06-05 14:27:48 -04:00
Nat Goodspeed d509e315cf DRTVWR-447: Fix BugSplat init with non-ASCII chars in install path.
The whole remaining difference between llifstream and std::ifstream is that
the former handles UTF-8 coded pathnames. Microsoft's implementation of the
latter does not.
2018-12-05 10:30:53 -05:00
Nat Goodspeed f7e99f0db7 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2018-11-14 16:17:36 -05:00
Brad Payne (Vir Linden) a84ee929a5 merge 2018-09-27 19:54:10 +01:00
Nat Goodspeed 1e8851c4df Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2018-09-26 16:39:16 -04:00
Oz Linden f1d4e788e7 SL-967 simplify viewer log file field syntax
MAINT-8991: only escape log message characters once, add unit test
remove extra log line created by LL_ERRS
document that tags may not contain spaces
2018-08-29 16:43:45 -04:00
Nat Goodspeed 302052700b DRTVWR-447: Add static_debug_info.log file to Windows crash report.
Also use the LLOSInfo information for platform rather than simply Windows32 or
Windows64.
2018-08-21 19:28:19 -04:00
Nat Goodspeed 234ca77f19 DRTVWR-447: Revert BugSplat diagnostic logging; add platform tag. 2018-07-14 08:52:58 -04:00
Nat Goodspeed 3888d1862a DRTVWR-447: For want of a 'const', the build was lost. 2018-07-12 16:07:06 -04:00
Nat Goodspeed b883ffaa75 DRTVWR-447: More diagnostic logging for BugSplat metadata strings. 2018-07-12 14:45:14 -04:00
Nat Goodspeed c7616af624 DRTVWR-447: Diagnostically try naively widening BugSplat metadata. 2018-07-11 21:52:03 -04:00
Nat Goodspeed 869d2f1fb2 DRTVWR-447: Fix silly typos 2018-07-11 18:26:27 -04:00
Nat Goodspeed 66d083967e DRTVWR-447: Add more diagnostic logging to Windows BugSplat crash. 2018-07-11 16:01:48 -04:00
Nat Goodspeed 62eecd87a5 SL-932: Attach user's settings.xml file to Windows crash reports.
It is not obvious whether the BugsplatMac attachment API even supports
multiple file attachments. I've contacted BugSplat support.
2018-07-10 17:47:00 -04:00
Nat Goodspeed cd52724ef8 DRTVWR-447: Suppress BugSplat UI; auto-fill certain BugSplat data.
Direct BugSplat to send crash reports without prompting, on both Windows and
Mac.

Add a mechanism by which code called after LL_ERRS() can retrieve the fatal
log message string. (How did the crash logger extract that for Linden crash
logging?)

Add that fatal message to crash reports on Windows. But as BugsplatMac is
engaged only on the run _after_ the crash, we no longer have that message in
memory.

Also add user name and region location to Windows crash reports. On Mac, (a)
we don't have the information from the previous run and (b) BugsplatMac
doesn't provide an API to attach that information to the crash report.

Add Mac logging to indicate the success or failure of sending the crash
report. Add Windows logging to indicate we're about to send.
2018-06-28 21:49:07 -04:00
Nat Goodspeed f6e7893a6e 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.
2018-06-28 12:39:42 -04:00
Nat Goodspeed bb757b937c SL-820: gDirUtilp is never nullptr.
It might point to an uninitialized LLDir, but that's a whole separate problem,
one that wouldn't be detected by checking for nullptr. If we hit that, time to
change to an LLSingleton.
2018-06-15 11:28:01 -04:00
Nat Goodspeed 6b17202a07 Automated merge with ssh://bitbucket.org/lindenlab/viewer-bugsplat 2018-05-26 08:45:19 -04:00
Nat Goodspeed a5c17472fb SL-823: Fix typo in code that sets up BugSplat. 2018-05-26 08:44:57 -04:00
Nat Goodspeed 3ca76065b0 SL-823: Fix minor compile errors in code to read build_data.json. 2018-05-25 19:02:53 -04:00
Nat Goodspeed 63fe7d802a SL-821, SL-826: Use BUGSPLAT_DB from environment on Windows and Mac.
On TeamCity, set BUGSPLAT_DB from build-secrets.

Use the presence of $BUGSPLAT_DB, rather than a new CMake BUGSPLAT option, to
control whether CMake searches for BugSplat -- and passes LL_BUGSPLAT into C++.

When BUGSPLAT_DB is present, make viewer_manifest.py set "BugSplat DB" in
build_data.json, and "BugsplatServerURL" in Mac Info.plist.

Make llappviewerwin32.cpp read "BugSplat DB" from build_data.json.

Add placeholders for Mac hooks to suppress BugSplat prompt and send
SecondLife.log.
2018-05-25 12:09:50 -04:00
Nat Goodspeed 800b47ec23 SL-821: Use classic-C BugSplat callback and static dumb pointer.
BugSplat has no business introducing a new C++ API based on classic-C function
pointers without even a generic pass-through user data pointer!
2018-05-17 15:02:26 -04:00
Nat Goodspeed cd21556aef SL-821: Convert wstrings to strings of __wchar_t for BugSplat API. 2018-05-17 10:58:59 -04:00
Nat Goodspeed c5f618d096 SL-821: Move Windows BugSplat engagement from llcommon to newview.
Use WSTRINGIZE(), LL_TO_WSTRING(), wstringize() to produce required wide
strings. Use a lambda for callback that sends log file; use LLDir, if set, to
find the log file.

Introduce BUGSPLAT CMake variable to allow suppressing BugSplat.
Make BUGSPLAT CMake variable set LL_BUGSPLAT for C++ compilations.

Set viewer version macros on llappviewerwin32.cpp, llappviewerlinux.cpp and
llappdelegate-objc.mm -- because BugSplat needs the viewer version data, and
because the macOS BugSplat hook is engaged in an Objective-C++ function we
override in the app delegate.
2018-05-17 06:53:42 -04:00
Brad Payne (Vir Linden) cddb530b4d Skip warning about direct launch of viewer if running under debugger. Currently this check should work on windows and linux. 2018-01-19 14:05:59 +00:00
Nat Goodspeed 0c7bc67814 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2017-10-11 14:35:49 -04:00
andreykproductengine 4a4d93d8c0 MAINT-7691 Fixed crash report not generating files in unicode named folders 2017-09-06 16:04:59 +03:00
andreykproductengine bf1af55a06 MAINT-7691 Crashreported sometimes not starting from unicode named folders 2017-08-31 20:26:25 +03:00
coyot@coyot-sager-PC.hsd1.ca.comcast.net a1194ce6e9 pull from gate 2017-05-05 18:07:00 +01:00