summaryrefslogtreecommitdiff
path: root/indra/newview/llappviewer.cpp
AgeCommit message (Collapse)Author
2022-01-06SL-13297 - Record and use build version reported by SLVoiceHoward Stearns
2022-01-06SL-13297 - Show both server/voice versions only if mismatched. Otherwise ↵Howard Stearns
show the longer one.
2022-01-06SL-13297 - Create LLLicenseInfo and use it in LLAppViewer::getViewerInfo and ↵Howard Stearns
LLFloaterAbout::postBuild.
2021-11-16Merge branch 'DRTVWR-519' into DRTVWR-552-cache-360Andrey Lihatskiy
# Conflicts: # indra/newview/app_settings/settings.xml
2021-11-16Merge branch 'master' into DRTVWR-534Andrey Lihatskiy
# Conflicts: # indra/newview/VIEWER_VERSION.txt
2021-11-16Merge branch 'master' into DRTVWR-519Andrey Lihatskiy
# Conflicts: # README.md
2021-10-28SL-15462 Convert waitForChannel() into state machineAndrey Kleshchev
2021-10-13Merge with master after latest Viewer releaseCallum Linden
2021-10-13Merge with head of Master after a new Viewer releaseCallum Prentice
2021-10-14Merge branch 'master' into DRTVWR-545-maint-mixAndrey Lihatskiy
2021-09-21Revert "SL-11841 make ‘Push to talk’ the default setting"Andrey Kleshchev
This reverts commits: 126877bc5ba45ff6b0b31368c55f894a0beaf5bf b661f62a7ad4dad9806eda8f4c8f2c9d64b3efbb ce660c7e7bb6e19a23d634fb6d3249330bf2d74c
2021-09-18SL-11841 Fix PushToTalkToggle being set incorectlyAndrey Kleshchev
Due to changed defaults, legacy compatibility will no longer work corectly, remove it
2021-09-03SL-15902 Cleanup gSecAPIHandlerMnikolenko ProductEngine
2021-09-03DRTVWR-545 Megre fixAndrey Kleshchev
2021-09-03Merge branch 'DRTVWR-522-maint' into DRTVWR-545-maint-mixAndrey Lihatskiy
# Conflicts: # indra/newview/llappviewer.cpp # indra/newview/llappviewerwin32.cpp # indra/newview/llmachineid.cpp
2021-09-01SL-15872 fixed more cases where sUseFBO wasn't updated correctlyMnikolenko Productengine
2021-08-12Merge branch 'master' into DRTVWR-520-apple-notarizationAndrey Lihatskiy
# Conflicts: # autobuild.xml # build.sh # indra/CMakeLists.txt # indra/newview/CMakeLists.txt # indra/newview/llappviewermacosx.cpp # indra/newview/llappviewerwin32.h # indra/newview/viewer_manifest.py # indra/win_crash_logger/llcrashloggerwindows.cpp
2021-08-06SL-15696 Don't be so persistent with outdated driver notificationAndrey Kleshchev
Some manufactures provide no own updated drivers yet forbid users from updating to intel provided one
2021-07-20DRTVWR-521 post-merge build fixAndrey Lihatskiy
2021-07-20Merge branch 'master' into DRTVWR-521-maintAndrey Lihatskiy
# Conflicts: # autobuild.xml # indra/llcommon/llerror.cpp # indra/llui/llnotifications.h # indra/newview/llappviewer.cpp # indra/newview/llappviewermacosx.cpp
2021-07-19Merge with tip of Master after a Viewer releaseCallum Prentice
2021-07-19Merge branch 'master' into DRTVWR-522-maintAndrey Lihatskiy
# Conflicts: # doc/contributions.txt # indra/newview/llappcorehttp.cpp # indra/newview/llappcorehttp.h
2021-06-25Merge branch 'master' into DRTVWR-520-apple-notarizationAndrey Lihatskiy
2021-06-25Merge branch 'master' into DRTVWR-522-maintAndrey Lihatskiy
# Conflicts: # indra/newview/app_settings/settings.xml
2021-06-25Merge branch 'master' into DRTVWR-521-maintAndrey Lihatskiy
2021-06-25Merge branch 'master' into DRTVWR-516-maintAndrey Lihatskiy
# Conflicts: # indra/newview/app_settings/settings.xml # indra/newview/llvoicevivox.cpp
2021-06-24Merge branch 'master' into DRTVWR-519Callum Prentice
2021-06-07Merge with tip of Master after Viewer releaseCallum Prentice
2021-06-07Merge branch 'master' into DRTVWR-522-maintAndrey Lihatskiy
2021-06-07Merge branch 'master' into DRTVWR-521-maintAndrey Lihatskiy
# Conflicts: # doc/contributions.txt
2021-06-07Merge branch 'master' into DRTVWR-520-apple-notarizationAndrey Lihatskiy
2021-06-07Merge branch 'master' into DRTVWR-518-uiAndrey Lihatskiy
2021-06-07Merge branch 'master' into DRTVWR-516-maintAndrey Lihatskiy
2021-05-26SL-15196 Attach correct log file to Bugsplat reportMnikolenko Productengine
2021-05-21Merge branch 'sl-10297' into DRTVWR-516-maintAndrey Lihatskiy
2021-05-12SL-10297: Clean up a few merge glitches.Nat Goodspeed
2021-05-12SL-10297: Merge branch 'sl-10297-oz' into sl-10297.Nat Goodspeed
Bring in Oz's tweaks to the way BugSplat is engaged and tested, plus a few other miscellaneous goodies.
2021-05-12BUG-230673: Trim asset disk cache regularlyAnsariel
2021-05-11SL-10297: Move LL_ERRS crash location into the LL_ERRS macro itself.Nat Goodspeed
Introduce Oz's LLERROR_CRASH macro analogous to the old LLError::crashAndLoop() function. Change LL_ENDL macro so that, after calling flush(), if the CallSite is for LEVEL_ERROR, we invoke LLERROR_CRASH right there. Change the meaning of LLError::FatalFunction. It used to be responsible for the actual crash (hence crashAndLoop()). Now, instead, its role is to disrupt control flow in some other way if you DON'T want to crash: throw an exception, or call exit() or some such. Any FatalFunction that returns normally will fall into the new crash in LL_ENDL. Accordingly, the new default FatalFunction is a no-op lambda. This eliminates the need to test for empty (not set) FatalFunction in Log::flush(). Remove LLError::crashAndLoop() because the official LL_ERRS crash is now in LL_ENDL. One of the two common use cases for setFatalFunction() used to be to intercept control in the last moments before crashing -- not to crash or to avoid crashing, but to capture the LL_ERRS message in some way. Especially when that's temporary, though (e.g. LLLeap), saving and restoring the previous FatalFunction only works when the lifespans of the relevant objects are strictly LIFO. Either way, that's a misuse of FatalFunction. Fortunately the Recorder mechanism exactly addresses that case. Introduce a GenericRecorder template subclass, with LLError::addGenericRecorder(callable) that accepts a callable with suitable (level, message) signature, instantiates a GenericRecorder, adds it to the logging machinery and returns the RecorderPtr for possible later use with removeRecorder(). Change llappviewer.cpp's errorCallback() to an addGenericRecorder() callable. Its role was simply to update gDebugInfo["FatalMessage"] with the LL_ERRS message, then call writeDebugInfo(), before calling crashAndLoop() to finish crashing. Remove the crashAndLoop() call, retaining the gDebugInfo logic. Pass errorCallback() to LLError::addGenericRecorder() instead of setFatalFunction(). Oddly, errorCallback()'s crashAndLoop() call was conditional on a compile-time SHADER_CRASH_NONFATAL symbol. The new mechanism provides no way to support SHADER_CRASH_NONFATAL -- it is a Bad Idea to return normally from any LL_ERRS invocation! Rename LLLeapImpl::fatalFunction() to onError(). Instead of passing it to LLError::setFatalFunction(), pass it to addGenericRecorder(). Capture the returned RecorderPtr in mRecorder, replacing mPrevFatalFunction. Then ~LLLeapImpl() calls removeRecorder(mRecorder) instead of restoring mPrevFatalFunction (which, as noted above, was order-sensitive). Of course, every enabled Recorder is called with every log message. onError() and errorCallback() must specifically test for calls with LEVEL_ERROR. LLSingletonBase::logerrs() used to call LLError::getFatalFunction(), check the return and call it if non-empty, else call LLError::crashAndLoop(). Replace all that with LLERROR_CRASH. Remove from llappviewer.cpp the watchdog_llerrs_callback() and watchdog_killer_callback() functions. watchdog_killer_callback(), passed to Watchdog::init(), used to setFatalFunction(watchdog_llerrs_callback) and then invoke LL_ERRS() -- which seems a bit roundabout. watchdog_llerrs_callback(), in turn, replicated much of the logic in the primary errorCallback() function before replicating the crash from llwatchdog.cpp's default_killer_callback(). Instead, pass LLWatchdog::init() a lambda that invokes the LL_ERRS() message formerly found in watchdog_killer_callback(). It no longer needs to override FatalFunction with watchdog_llerrs_callback() because errorCallback() will still be called as a Recorder, obviating watchdog_llerrs_callback()'s first half; and LL_ENDL will handle the crash, obviating the second half. Remove from llappviewer.cpp the static fast_exit() function, which was simply an alias for _exit() acceptable to boost::bind(). Use a lambda directly calling _exit() instead of using boost::bind() at all. In the CaptureLog class in llcommon/tests/wrapllerrs.h, instead of statically referencing the wouldHaveCrashed() function from test.cpp, simply save and restore the current FatalFunction across the LLError::saveAndResetSettings() call. llerror_test.cpp calls setFatalFunction(fatalCall), where fatalCall() was a function that simply set a fatalWasCalled bool rather than actually crashing in any way. Of course, that implementation would now lead to crashing the test program. Make fatalCall() throw a new FatalWasCalled exception. Introduce a CATCH(LL_ERRS("tag"), "message") macro that expands to: LL_ERRS("tag") << "message" << LL_ENDL; within a try/catch block that catches FatalWasCalled and sets the same bool. Change all existing LL_ERRS() in llerror_test.cpp to corresponding CATCH() calls. In fact there's also an LL_DEBUGS(bad tag) invocation that exercises an LL_ERRS internal to llerror.cpp; wrap that too.
2021-05-11Fix for SL-15226 Simple cache viewer: Integer overflow in cache size - via ↵Callum Prentice
FS:Ansariel
2021-05-06SL-15168 Viewer side functionality for guidebook window openingAndrey Kleshchev
2021-04-30Merge branch 'master' into DRTVWR-520-apple-notarizationAndrey Lihatskiy
2021-04-30Merge branch 'master' into DRTVWR-522-maintAndrey Lihatskiy
# Conflicts: # doc/contributions.txt
2021-04-30Merge branch 'master' into DRTVWR-521-maintAndrey Lihatskiy
2021-04-29Clean up a merge conflictCallum Prentice
2021-04-29Merge master (DRTVWR-515) into DRTVWR-516-maintAndrey Kleshchev
# Conflicts: # autobuild.xml # doc/contributions.txt # indra/llcommon/llcoros.cpp # indra/llmessage/llcoproceduremanager.cpp # indra/newview/llfloaterfixedenvironment.cpp # indra/newview/llfloaterimsessiontab.cpp
2021-04-29Merge master into DV525-merge-6.4.19Dave Houlton
2021-04-15SL-14914 New release viewer install updated to RC unexpectedlyAndrey Kleshchev
Requested behavior: First install of a new viewer should never prompt to update to any RC. Anfortunately neither viewer nor updater can tell the difference betwen RC and optional release update, so setting updater to download only required updates.
2021-04-05SL-15070 FIXED Moving the cache does not remove the "cache" folder from the ↵Mnikolenko Productengine
old location
2021-04-01Merge branch 'master' into DRTVWR-519Callum Prentice