summaryrefslogtreecommitdiff
path: root/indra/llcommon
AgeCommit message (Collapse)Author
2018-10-17DRTVWR-447: Merge Oz's logging changesNat Goodspeed
2018-10-17DRTVWR-447: Move test<5> and writeMsgNeedsEscaping() into sequence.Nat Goodspeed
2018-10-17Automated merge with ssh://bitbucket.org/nat_linden/viewer-poseidonNat Goodspeed
2018-10-16renumber the new test to replace the one that was removedOz Linden
2018-10-11Modify logging so that the in-viewer console and stderr do not escape line ↵Oz Linden
breaks Improve the implementation so that escaping is computed only once
2018-10-04DRTVWR-474: Make login coroutine sync with updater process on failure.Nat Goodspeed
Specifically, introduce an LLEventMailDrop("LoginSync"). When the updater detects that an update is required, it will post to that rendezvous point. When login.cgi responds with login failure, make the login coroutine wait (a few seconds) for that ping from the updater. If we receive that ping and if it contains a "reply" key, make the fail.login listener respond to the updater with an indication of whether to proceed with update. If both login.cgi and the updater concur that an update is required, produce a new confirmation message for the user and then (once user responds) tell the updater to proceed. Otherwise, produce the usual login-failure message and tell the updater never mind. Introduce LLCoro::OverrideConsuming to provide temporary save/restore of the set_consuming() / get_consuming() flag. It's a good idea to set the consuming flag when retrieving data from an LLEventMailDrop.
2018-10-03DRTVWR-474: Do NOT autokill updater process on viewer termination.Nat Goodspeed
The updater is required to survive beyond termination of the viewer that launched it so it can launch the next installer, or a replacement viewer. Having the old viewer forcibly terminate it on shutdown would be counter- productive. Introduce a third LLLeap::create() overload taking LLProcess::Params, which gives access to autokill, cwd and other options previously unsupported by LLLeap. Reimplement the existing create() overloads in terms of this new one, since LLLeapImpl::LLLeapImpl() is already based on LLProcess::Params anyway. Use LLProcess::Params in LLAppViewer::init() to specify the updater process, setting autokill=false. Refactoring LLLeapImpl() apparently involved engaging an LLInitParam::Block feature never before used: had to drag operator() into Multiple from its base class TypedParam (as has been done in other TypedParam subclasses).
2018-09-27DRTVWR-474: Make LLEventMailDrop pass all saved events to listener.Nat Goodspeed
Previously, LLEventMailDrop would send only the first queued event to a newly-connected listener. If you wanted to flush all queued events, you'd have to "pump" the queue by repeatedly disconnecting and reconnecting -- with no good way to know when you'd caught up. The new behavior makes LLEventMailDrop resemble a multi-valued future: a rendezvous between producer and consumer that, once connected, pushes values rather than requiring them to be pulled (as with a simple queue) -- regardless of the relative order in which post() and listen() are called.
2018-09-26DRTVWR-447: Finish pulling in new viewer-release.Nat Goodspeed
2018-09-26Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2018-09-07remove only-partially-successful attempt to put teamcity blocks around targetsOz Linden
2018-09-05add more block structure to TeamCity log output for componentsOz Linden
2018-08-29SL-967 simplify viewer log file field syntaxOz Linden
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-28Backed out changeset: 5b0f20062633AndreyL ProductEngine
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-21MAINT-5651 LLTrace issues on exitandreykproductengine
2018-08-17MAINT-8991 Escape newlines in log entriesmaxim_productengine
2018-08-02Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2018-08-01MAINT-8803 Better UI handling of unrecognized inventory itemsmaxim_productengine
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-22MAINT-8686 Don't log empty listandreykproductengine
2018-06-21DRTVWR-447: Merge up to latest viewer-releaseNat Goodspeed
2018-06-14SL-821: Avoid Breakpad (and signal handling in general) for BugSplat.Nat Goodspeed
Pass LL_BUGSPLAT into llapp.cpp compile to be able to detect that.
2018-06-13MAINT-8731 Click action to disable clicking objects, per-object in a linksetandreykproductengine
2018-05-23Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2018-05-22MAINT-2338 Unit testsAndrey Kleshchev
2018-05-17SL-821: Move Windows BugSplat engagement from llcommon to newview.Nat Goodspeed
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-17SL-821: Merge LL_TO_WSTRING(), WSTRINGIZE() changes.Nat Goodspeed
2018-05-17SL-821: Add WSTRINGIZE() and DEWSTRINGIZE() macros for wide strings.Nat Goodspeed
Streamline convenience overload stringize(std::wstring); make convenience overload wstringize(std::string) symmetrically convert from UTF-8 string. Also eliminate STRINGIZE() et al. dependency on Boost.Phoenix: use lambdas instead. Using lambdas instead of template expansion necessitates reordering some code in wrapllerrs.h.
2018-05-17SL-821: Add LL_TO_WSTRING() macro to llpreprocessor.h.Nat Goodspeed
Also use existing LL_TO_STRING() macro to stringize LL_VIEWER_CHANNEL in llversioninfo.cpp and its tests.
2018-05-14MAINT-8689 Diagnostics for coroutine memory crashandreykproductengine
2018-06-08Merged in lindenlab/viewer-lynxAndreyL ProductEngine
2018-06-07MAINT-8724 fix crash in libc++abi demangling on OSX 10.14 MojaveGraham Linden
2018-06-07Better fix for OSX 10.14 libc++abi demangling crash on mem shenanigans.Graham Linden
Silence nagging about running launcher for non-release for download builds. Tweak newview CMake to use executable instead of SL_Launcher and re-enable debugging within Xcode.
2018-06-07Disable name demangling via libc++abi on OS X to avoid malloc abort trap on ↵Graham Linden
OS X 10.14 Mojave
2018-05-30MAINT-8686 Viewer should report active coroutines at the end of the sessionandreykproductengine
2018-05-11SL-821: Move BugSplat includes/libs from llcommon to newview.Nat Goodspeed
No C++ source in llcommon references any of the BugSplat code.
2018-04-12Automated merge with tip of viewer-release after Viewer Media Update releasecallum_linden
2018-02-22MAINT-8183 Fixed some exit issues and crashesandreykproductengine
2018-02-19MAINT-8308 Additional logging for mesh processingandreykproductengine
2018-02-19MAINT-8022 Handling memory errors in unzip_llsdNavMeshandreykproductengine
2018-02-12Merged in lindenlab/viewer-bearAndreyL ProductEngine
2018-02-12Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2018-02-01MAINT-2338 Implemented binary parser depth controlandreykproductengine
2018-01-30MAINT-8091 Removed deprecated and unused private memory poolingAndrey Kleshchev
2018-01-29MAINT-8234 Mesh tread protections and removed unnecessary try in staticRun()Andrey Kleshchev
2018-01-29MAINT-8234 Mesh tread protections and removed unnecessary try in staticRun()Andrey Kleshchev
2018-01-17merge 5.1.0-releaseOz Linden
2018-01-17Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2018-01-05Automated merge with tip of viewer64callum_linden