summaryrefslogtreecommitdiff
path: root/indra
AgeCommit message (Collapse)Author
2018-08-24DRTVWR-447: Introduce explicit CMake BUGSPLAT_DB variable.Nat Goodspeed
Define the CMake cache variable, with empty string as its default. Make build.sh pass the BUGSPLAT_DB environment variable as a CMake command-line variable assignment. Change CMake 'if (DEFINED ENV{BUGSPLAT_DB})' to plain 'if (BUGSPLAT_DB)'. Make CMake pass new --bugsplat switch to every one of SIX different invocations of viewer_manifest.py. Give llmanifest.main() function an argument to allow supplementing the base set of command-line switches with additional application-specific switches. In viewer_manifest.py, define new --bugsplat command-line switch and pass to llmanifest.main(). Instead of consulting os.environ['BUGSPLAT_DB'], consult self.args['bugsplat'].
2018-08-23DRTVWR-447: Add (some) metadata to Mac crash reports.Nat Goodspeed
This required reordering certain operations during Mac viewer startup. Split llappviewermacosx.cpp's initViewer() function into constructViewer() (which instantiates LLAppViewerMacOSX) and initViewer() (which calls LLAppViewerMacOSX::init()). llappdelegate-objc.mm's applicationDidFinishLaunching override now calls [BugsplatStartupManager start] between constructViewer() and initViewer(): we want constructViewer() to have set up the logging subsystem so we can log the actions of BugsplatStartupManagerDelegate override methods, but otherwise we want BugsplatStartupManager in place as early as possible to catch any early crashes. Besides, initViewer() ends up overwriting the static_debug_info.log on which we depend for the *previous* run's crash metadata. Move the code that initializes the pathname of the static_debug_info.log file from LLAppViewerMacOSX::init() to the LLAppViewerMacOSX() constructor, since BugsplatStartupManagerDelegate override methods need to read (the previous run's) file. Add code to applicationLogForBugsplatStartupManager override to set new BugsplatMac 1.0.6 properties userName and userEmail. Don't log empty fields from static_debug_info.log if we couldn't read it.
2018-08-22DRTVWR-447: Additional logging getting metadata for previous runNat Goodspeed
2018-08-22DRTVWR-447: Add logging to BugsplatMac override methods.Nat Goodspeed
2018-08-22DRTVWR-447: Attempt to post BugSplat metadata with Mac crash reports.Nat Goodspeed
Introduce CrashMetadata, an LLSingleton in llappviewermacosx.cpp, declared in llappviewermacosx-for-objc.h and accessed by the various BugsplatStartupManagerDelegate override methods. CrashMetadata is populated by reading the previous (presumably crashed) run's static_debug_info.log file. This replaces the previous getOldLogFilePathname(), getFatalMessage() and getAgentFullname() functions. To extend that suite for additional metadata, not only would we have to keep adding new free functions, but we'd have to keep rereading the static_debug_info.log file. Override the new applicationKeyForBugsplatStartupManager, defaultUserNameForBugsplatStartupManager, defaultUserEmailForBugsplatStartupManager methods to extract relevant fields from CrashMetadata. Change applicationLogForBugsplatStartupManager and attachmentForBugsplatStartupManager to do the same. Enhance llviewerregion.cpp to update the static_debug_info.log file every time we enter a new region.
2018-08-21DRTVWR-447: Add static_debug_info.log file to Windows crash report.Nat Goodspeed
Also use the LLOSInfo information for platform rather than simply Windows32 or Windows64.
2018-08-21MAINT-8917: For BugSplat viewer, don't create dump-UUID directory.Nat Goodspeed
Just put the static_debug_info.log file in the parent logs directory. Also update that static_debug_info.log file with "FatalMessage" key taken from LL_ERRS() message string.
2018-08-21Don't compare rbegin() iterators, use LLStringUtil::endsWith().Nat Goodspeed
I think the intention of (sDumpDir.rbegin() == mDirDelimiter.rbegin()) was to test whether sDumpDir endsWith(mDirDelimiter). But those iterators will never be equal. Instead, use LLStringUtil::endsWith().
2018-08-21Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2018-08-21increment viewer version to 5.1.9Nat Goodspeed
2018-08-17DRTVWR-447: Use os.path.split(path) instead of path.split(os.sep).Nat Goodspeed
On Windows, where 'path' might be separated either with '/' or '\', the latter breaks unless all path separators are in fact the os.sep character '\'. While it would be possible to code something fancy with os.sep and os.altsep, testing the latter for None, much simpler to let os.path.split() handle it.
2018-08-15DRTVWR-447: Simplify redundant if-key-in-dict-and-value-nonempty logicNat Goodspeed
2018-08-15DRTVWR-447: Streamline some of the logic around extra packages.Nat Goodspeed
2018-08-10VOICE-50 VOICE-58: recover from SLVoice process exit automaticallyOz Linden
2018-08-02merge changes for 5.1.7-releaseOz Linden
2018-08-02DRTVWR-447: Merge changesets from newly updated viewer-release.Nat Goodspeed
2018-08-02Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2018-08-02increment viewer version to 5.1.8Nat Goodspeed
2018-08-02additional logging around launch/termination of SLVoiceOz Linden
2018-07-29retrigger buildOz Linden
2018-07-18SL-920 Disable friendship caps untill new requirements are providedandreykproductengine
2018-07-17DRTVWR-447: Force rebuild with new BUGSPLAT_DB value.Nat Goodspeed
2018-07-17SL-920 Better logging and limited cap to offline messagesandreykproductengine
2018-07-14DRTVWR-447: Revert BugSplat diagnostic logging; add platform tag.Nat Goodspeed
2018-07-12DRTVWR-447: For want of a 'const', the build was lost.Nat Goodspeed
2018-07-12DRTVWR-447: More diagnostic logging for BugSplat metadata strings.Nat Goodspeed
2018-07-11DRTVWR-447: Diagnostically try naively widening BugSplat metadata.Nat Goodspeed
2018-07-11DRTVWR-447: Fix silly typosNat Goodspeed
2018-07-11DRTVWR-447: Add more diagnostic logging to Windows BugSplat crash.Nat Goodspeed
2018-07-10SL-932: Attach user's settings.xml file to Windows crash reports.Nat Goodspeed
It is not obvious whether the BugsplatMac attachment API even supports multiple file attachments. I've contacted BugSplat support.
2018-07-10DRTVWR-447: Use absolute path prefixes for CEF components.Nat Goodspeed
viewer_manifest.py had LLManifest.prefix() calls starting with '..' (or os.pardir, same thing) which failed with new prefix() calling conventions. Explicitly starting with os.path.join(self.args['build'], os.pardir, etc.) where applicable works much better.
2018-07-09Merged in lindenlab/viewer-lynxAndreyL ProductEngine
2018-07-06MAINT-1771 FIXED Avatar doesn't stand up after pressing Shift+Alt+S keyboard ↵maxim_productengine
shortcut
2018-07-04MAINT-8800 Vivox pointlesly stalls for 10 seconds waiting on shutdownandreykproductengine
2018-07-03Merged in graham_linden/viewer-lynx-graham (pull request #82)Andrey Lihatskiy
Roll back optimization that breaks cubemap updates Approved-by: Andrey Lihatskiy <andreylproductengine@lindenlab.com>
2018-07-03Roll back optimization that isn't needed for sky rendering when atmospherics ↵Graham Linden
are used, but is needed for cubemap update.
2018-07-02FIX INTL-93 translate Viewer Set51 from viewer-bear, for 9 languageseli
2018-07-02MAINT-8618 Viewer attempting to edit action when it has no permissionandreykproductengine
2018-06-30MAINT-8822: Revert viewer_manifest to using src= instead of build=.Nat Goodspeed
Turns out that having multiple (source, build, artwork) prefix stacks isn't such a good idea after all. Many of our LLManifest.path() directives use wildcards -- and if _any files_ match the specified wildcard from a prefix stack other than what you had in mind, viewer_manifest will silently, cheerfully do the Wrong Thing. There is a good reason why all existing LLManifest.prefix() calls exclusively used src= and/or dst= instead of build=.
2018-06-30MAINT-8822: Give LLManifest.prefix() (suppressed) debugging output.Nat Goodspeed
2018-06-29MAINT-8260 make TextureLoadFullRes not persistent to avoid issues with ↵Graham Linden
accidentally setting it on systems which cannot handle the mem load it implies
2018-06-29MAINT-8822: Revamp the LLManifest.prefix() calling convention.Nat Goodspeed
The way prefix("path_fragment") or prefix(src="path_fragment") has always worked is that unless you explicitly specify dst="", it adds "path_fragment" to the source AND dest prefix stacks! The most recent refactoring of viewer_manifest.py failed to copy CEF because it involved prefix(src="../some lengthy path fragment") -- forgetting to specify dst="" -- which added "../some lengthy path fragment" to the dest prefix stack -- which put it outside the viewer install staging area altogether. Having been bitten too many times by forgetting to add prefix(dst=""), we remove the necessity. The prefix() src=, build= and dst= prefix stacks are now completely independent. Add src_dst= keyword argument for when you DO want to add the same path fragment to both the source and dest prefix stacks. ("Explicit is better than implicit.") Change all existing calls accordingly. Now that the build prefix stack no longer tracks the src prefix stack, we were failing to pick up some things from the build area because NOBODY ever used build=, relying entirely on src= to point both to stuff in the source tree and stuff in the build tree. Try to use build= appropriately. If that proves too confusing, we might eliminate the separate build and artwork (!) prefix stacks entirely, requiring callers to reset the src stack explicitly when switching back and forth.
2018-06-28DRTVWR-447: Suppress BugSplat UI; auto-fill certain BugSplat data.Nat Goodspeed
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-28MAINT-8797: Resurrect BugSplat crash reporting on Windows.Nat Goodspeed
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-27fix debug loggingOz Linden
2018-06-27fix provisioning debug logOz Linden
2018-06-27MergeGraham Linden
2018-06-27add more startup debug loggingOz Linden
2018-06-27Disambiguate logical op precedence for Clang.Graham Linden
2018-06-26Fix misspelled convenience func name.Graham Linden