summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-09-12Fix warning spam from missing call to unmapBuffer introduced in #2544 (#2556)Rye Mutt
2024-09-12viewer#2529 Optimize LLSettingsWater::blendAndrey Kleshchev
2024-09-12Don't allow LLAttachmentsMgr to iterate COF items when there is no ↵Maxim Nikolenko
questionable links there
2024-09-12Recursively package all of indra/newview/scripts/lua.Nat Goodspeed
Instead of trying to continue mirroring the lua subdirectory structure in viewer_manifest.py, and enumerating the relevant file extensions, just pack up the whole subtree.
2024-09-12Add LLAgent.teleport() Lua functionNat Goodspeed
that wraps existing "LLTeleportHandler" LEAP listener.
2024-09-12Disable happy-path destructor semantics when unwinding C++ stack.Nat Goodspeed
If the C++ runtime is already handling an exception, don't try to launch more Lua operations.
2024-09-12Populate the viewer package's lua/auto subdir as well as require.Nat Goodspeed
2024-09-12#2542 Buoyant NametagsAlexander Gavriliuk
2024-09-12Work around broken MS `std::basic_ostream`.Nat Goodspeed
MSVC's `std::basic_ostream<CHAR>` template is not implemented in a general way: it can only be instantiated for certain specific `CHAR` types. Declaring a `std::basic_ostringstream<llwchar>` fails on MSVC with C2941. Fortunately both llstring.cpp functions that build a `LLWString` incrementally have the same characteristics: (a) they each build it one character at a time, and (b) the length of the result `LLWString` won't exceed the known length of the input string. So it works to declare a `std::vector<llwchar>`, `reserve()` the input length and `push_back()` individual characters. Then we can use `LLWString`'s range constructor to immediately allocate the right size.
2024-09-12Specialize `std::numpunct<llwchar>` to fix broken MS `basic_ostream`.Nat Goodspeed
MSVC's `std::basic_ostream<CHAR>` template is not implemented in a general way: it can only be instantiated for certain specific `CHAR` types. Declaring a `std::basic_ostringstream<llwchar>` fails on MSVC with C2941. The ugly workaround from Stack Overflow is to clone-and-edit Microsoft's `std::numpunct` template, locally specializing it for the desired `CHAR` type.
2024-09-12Give `LLGLSLShader::finishProfile()` a static default string param.Nat Goodspeed
`finishProfile()` is called at least once within a `__try` block. If we default its `report_name` parameter to a temporary `std::string`, that temporary must be destroyed when the stack is unwound, which `__try` forbids.
2024-09-11Merge pull request #2551 from secondlife/roxie/webrtc-1436Roxanne Skelly
Fix issue with improper reporting as to whether voice is working.
2024-09-12Fix names in group chat sometimes showing as "Loading..." and never resolve ↵Ansariel Hiller
(#2547)
2024-09-12Fix incorrect operator warning and possible dereferencing of null pointer ↵Ansariel Hiller
(#2546)
2024-09-11Fix issue with improper reporting as to whether voice is working.Roxie Linden
This fixes #1436, an issue where the 'call button' sometimes got greyed out when it shouldn't have been. Vivox is now 'working' (and the call button can be enabled) when it's logged in. WebRTC is 'working' (and the call button can be enabled) when the coroutine is active.
2024-09-11viewer#2529 Optimize LLSettingsSky::blendAndrey Kleshchev
2024-09-11viewer#2529 Track interpolateSDMap's performanceAndrey Kleshchev
viewer#2529 Fix initialization
2024-09-11Make Develop->Render Tests->Frame Profile dump JSON to a file too.Nat Goodspeed
Make `LLGLSLShader::finishProfile()` accept a string pathname instead of a bool and, in addition to logging statistics to the viewer log, output statistics to that file as JSON. The calls that used to pass `emit_report=false` now pass `report_name=std::string()`. Make llviewerdisplay.cpp's `display()` function synthesize a profile filename in the viewer's logs directory, and pass that filename to `LLGLSLShader::finishProfile()`.
2024-09-11viewer#2529 Optimize updateGLVariablesForSettingsAndrey Kleshchev
Intent is to eventually use only stored variables for everything. LLSD operations are far too expensive.
2024-09-11Make updateKeyboardFocus a bit more efficientAndrey Kleshchev
2024-09-10Merge pull request #2544 from secondlife/davep-profile-session-9/10cosmic-linden
Profile guided optimizations
2024-09-10Profile guided optimizationsRunitaiLinden
2024-09-10Merge remote-tracking branch 'origin/release/2024.08-DeltaFPS' into developBrad Linden
2024-09-10mute icons were not showing during group call when user was mutedRoxie Linden
This fixes: https://github.com/secondlife/viewer-private/issues/285 When processing messages from the voice server, the volume and not the mute status was being checked with respect to retrieving the mute status.
2024-09-10In llstring.cpp, build result strings using basic_ostringstream<T>.Nat Goodspeed
Many of the string conversion functions in llstring.cpp would build their result strings using successive concatenation operations, piece by piece. This can be expensive in allocations. Instead, use a std::basic_ostringstream of char type appropriate to the return string type to aggregate piecewise string building.
2024-09-10Fix risky signature of `wchar_to_utf8chars()`. Add `ll_convert()` alias.Nat Goodspeed
`wchar_to_utf8chars()` used to require a `char*` output buffer with no length, assuming that its caller knew enough to provide a buffer of sufficient length. In fact a `char[8]` buffer suffices, but nothing in the header indicated that. Eliminate the output parameter and return `std::string`. Fix the few existing callers. Also set an `ll_convert_alias` so that `ll_convert_to<std::string>(llwchar)` directly calls `wchar_to_utf8chars()`. Replace instances of the workaround `wstring_to_utf8str(LLWString(1, llwchar))`.
2024-09-10#2460 Max-Non-Impostors uses a bad shape (code formatting)Alexander Gavriliuk
2024-09-10#2460 Max-Non-Impostors uses a bad shapeAlexander Gavriliuk
2024-09-10#2434 Intel HD4000 compatibility pass (#2541)Dave Parks
* #2434 Intel HD4000 compatibility pass * Fixes crash on old drivers when loading shaders * Fixes 30 second hang on startup * Fixes occasional dev build crash in LLWearableList --------- Co-authored-by: Brad Linden <brad@lindenlab.com>
2024-09-10llinstancetracker.h was missing an #include from last merge.Nat Goodspeed
2024-09-10Pass std::string_view by value, not by const reference.Nat Goodspeed
Consensus seems to be that (a) string_view is, in effect, already a reference, (b) it's small enough to make pass-by-value reasonable and (c) the optimizer can reason about values way better than it can about references.
2024-09-10Merge pull request #2536 from Ansariel/develop-viewermenu-cleanupnat-goodspeed
Clean up llviewermenu
2024-09-10Merge pull request #2539 from secondlife/maxim/viewer_2443Maxim Nikolenko
Allow the in world voice indicator to be toggled in preferences
2024-09-10Allow the in world voice indicator to be toggled in preferencesMnikolenko Productengine
2024-09-10Fix a couple errors from merging in new code.Nat Goodspeed
2024-09-10Clean up llviewermenuAnsariel
2024-09-09Merge pull request #2535 from secondlife/roxie/webrtc-1091Roxanne Skelly
2024-09-09Voice bars of self and as seen by others do not appear the same.Roxie Linden
The voice server sends up the float power level of peers as an integer multiplied by 128, in order to save character count as the voice power level will likely be only 3 digits, instead of many for a full float. The client was not taking this into account.
2024-09-09Merge branch 'develop' into release/luau-scriptingNat Goodspeed
2024-09-09Merge pull request #2523 from secondlife/lua-feature-flagnat-goodspeed
Put viewer's Lua functionality behind a feature flag, default off.
2024-09-09Merge pull request #2533 from secondlife/roxie/webrtc-283Roxanne Skelly
Callback button for groups was not being reenabled after hanging up on group call.
2024-09-09Callback button for groups was not being reenabled after hanging up on group ↵Roxie Linden
call. For #2532, callback button was remaining disabled after hanging up on a group call. Also, fix an issue where user was automatically added to a group call after the initiator of the group call hangs up and re-calls the group.
2024-09-09Merge pull request #2530 from secondlife/release/2024.08-DeltaFPSBrad Linden
Release/2024.08 delta fps
2024-09-09Fix viewer channel selection based on a branch (#2528)Andrey Lihatskiy
2024-09-09Merge pull request #2527 from secondlife/maxim/viewer_2473Maxim Nikolenko
Reduce 'World map' floater draw time
2024-09-09Reduce 'World map' floater draw timeMnikolenko Productengine
2024-09-09Fix spelling error in variable name (#2526)Kyler "Félix" Eastridge
2024-09-09Changes towards C++20 compatibility (#2520)Ansariel Hiller
2024-09-09Update calcDataSizeJ2C to stop undersized blocks (#2525)TommyTheTerrible
The initial block area for the pyramid walk should not be smaller than the max_block_size area so need an llmax to not allow multiplication below 1. This was causing decode errors for complex small images (128x128 or smaller) on discard 1 and 2.
2024-09-08#459 Filters on object inventoryAlexander Gavriliuk