summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-07-01viewer#1131 MacOS build fixes and small adjustmentsAndrey Kleshchev
2024-07-01viewer#1131 gltf model upload UI WIP #3Andrey Kleshchev
2024-07-01viewer#1131 gltf model upload UI WIP #2Andrey Kleshchev
2024-07-01viewer#1131 gltf model upload UI WIPAndrey Kleshchev
2024-07-01Fix for various TP where a mirror is presentBeq
these manifest as crashes in isDynamic, isBox and similar calls that are accessed through a dangling probe.
2024-07-01Remove include of format library that isn't used and can't be used without ↵Ansariel
C++20 support anyway
2024-07-01Fix loop scope issue and rework some strange-looking loopsAnsariel
2024-07-01Merge pull request #1871 from secondlife/lua_emplace_betternat-goodspeed
Streamline and robustify lua_emplace<T>() object cleanup.
2024-07-01Fix trailing spaces to make pre-commit happyAndrey Lihatskiy
2024-07-01build fixMaxim Nikolenko
2024-07-01Move error strings to strings.xml; pass wearable type and is_worn flag for ↵Mnikolenko Productengine
outfit items
2024-06-28Updated git-blame-ignore-revsBrad Linden
2024-06-28Merge remote-tracking branch 'origin/release/2024.06-atlasaurus' into developBrad Linden
2024-06-28Merge remote-tracking branch 'origin/release/webrtc-voice' into developBrad Linden
# Conflicts: # indra/newview/llvoicechannel.cpp
2024-06-28Fix pre-commit whitespace checks and merge PR secondlife/viewer#1874Brad Linden
2024-06-28Add LuaAutorunPath, LuaCommandPath and LuaRequirePath settings.Nat Goodspeed
Remove AutorunLuaScriptFile and the LLLUAmanager::runScriptOnLogin() method that checked it. Instead, iterate over LuaAutorunPath directories at viewer startup, iterate over *.lua files in each and implicitly run those. LuaCommandPath and LuaRequirePath are not yet implemented.
2024-06-28realign system ram functionsBeq
make the system ram function align across all supported platforms. Taken from https://github.com/FirestormViewer/phoenix-firestorm/commit/3b074ba4af5e303125db606dd69eb4282a91f957 + clean up FS specific comment markers and upstream code retention
2024-06-28Work around MSVC limitation: explicitly call fsyspath::string().Nat Goodspeed
2024-06-28Give our fsyspath an operator std::string() conversion method.Nat Goodspeed
This is redundant (but harmless) on a Posix system, but it fills a missing puzzle piece on Windows. The point of fsyspath is to be able to interchange freely between fsyspath and std::string. Existing fsyspath could be constructed and assigned from std::string, and we could explicitly call its string() method to get a std::string, but an implicit fsyspath-to-string conversion that worked on Posix would trip us up on Windows. Fix that.
2024-06-27Work around VS refusal to initialize a stringNat Goodspeed
2024-06-27Introduce TypeTag<T> template whose int value differs for each T.Nat Goodspeed
This replaces type_tag<T>(), which searched and possibly extended the type_tags unordered_map at runtime. If we called lua_emplace<T>() from different threads, that would require locking type_tags. In contrast, the compiler must instantiate a distinct TypeTag<T> for every distinct T passed to lua_emplace<T>(), so each gets a distinct value at static initialization time. No locking is required; no lookup; no allocations. Add a test to llluamanager_test.cpp to verify that each distinct T passed to lua_emplace<T>() gets its own TypeTag<T>::value, and that each gets its own destructor -- but that different lua_emplace<T>() calls with the same T share the same TypeTag<T>::value and the same destructor.
2024-06-27Make lua_emplace<T>() use Luau userdata tags with destructors.Nat Goodspeed
It turns out that Luau does not honor PUC-Rio Lua's __gc metafunction, so despite elaborate measures, the previous lua_emplace<T>() implementation would not have destroyed the contained C++ T object when the resulting userdata object was garbage-collected. Moreover, using LL.atexit() as the mechanism to destroy lua_emplace<T>() userdata objects (e.g. LuaListener) would have been slightly fragile because we also want to use LL.atexit() to make the final fiber.run() call, when appropriate. Introducing an order dependency between fiber.run() and the LuaListener destructor would not be robust. Both of those problems are addressed by leveraging one of Luau's extensions over PUC-Rio Lua. A Luau userdata object can have an int tag; and a tag can have an associated C++ destructor function. When any userdata object bearing that tag is garbage-collected, Luau will call that destructor; and Luau's lua_close() function destroys all userdata objects. The resulting lua_emplace<T>() and lua_toclass<T>() code is far simpler. It only remains to generate a distinct int tag value for each different C++ type passed to the lua_emplace<T>() template. unordered_map<std::type_index, int> addresses that need.
2024-06-27Make test.cpp test driver recognize LOGTEST_testname.Nat Goodspeed
Setting LOGTEST=DEBUG, when many unit/integration tests must be rebuilt and run, can result in lots of unnecessary output. When we only want DEBUG log output from a specific test program, make test.cpp recognize an environment variable LOGTEST_testname, where 'testname' might be the full basename of the executable, or part of INTEGRATION_TEST_testname or PROJECT_foo_TEST_testname. When test.cpp notices a non-empty variable by that name, it behaves as if LOGTEST were set to that value.
2024-06-271836 dont store texture in system memory unless absolutely necessary (#1843)Dave Parks
* #1836 Texture memory usage overhaul. Much decrufting - don't keep a copy of textures in system memory - use GPU to downrez textures instead of reloading from cache - use GPU to generate brightness/darkness bumpmaps
2024-06-26Merge pull request #1850 from secondlife/roxie/webrtc-voice-crash-fixesRoxanne Skelly
Various crash fixes. ALso fixes an issue with adhoc/group calls on vivox regions.
2024-06-26Convert tabs to spacesRoxie Linden
2024-06-26Merge branch 'release/webrtc-voice' of github.com:secondlife/viewer into ↵Roxie Linden
roxie/webrtc-voice-crash-fixes
2024-06-26Make the webrtc viewer work for vivox adhoc/group calls.Roxie Linden
There was an issue on the release grid where old-style credentials were being sent over and the webrtc viewer wasn't dealing with them properly.
2024-06-26Merge pull request #1849 from Ansariel/developBrad Linden
Increase texture discard bias if system memory gets low
2024-06-26Increase texture discard bias if system memory gets lowAnsariel
2024-06-26Merge pull request #1800 from ↵Brad Linden
secondlife/1771-mesh-objects-do-not-display-until-you-walk-directly-over-them #1771 Fix for objects disappearing and not reappearing until LoD switch
2024-06-25Issue#880 Crash on a dead pointer in a chat sessionAndrey Kleshchev
2024-06-25#1806 - crash in initVoiceChannelRoxie Linden
2024-06-25Merge pull request #1842 from secondlife/roxie/webrtc-voice-crash-fixesBrad Linden
viewer#1821 Crash at getSessionID()
2024-06-25viewer#1821 Crash at getSessionID()Andrey Kleshchev
2024-06-25Merge pull request #1837 from secondlife/roxie/webrtc-voice-gainRoxanne Skelly
2024-06-25Merge pull request #1830 from secondlife/roxie/webrtc-voice-1451Roxanne Skelly
2024-06-25Add wear/detach actions to Appearance listener; update example scriptMnikolenko Productengine
2024-06-25viewer#1506 The Dynamic probe checkbox wasn't workingAndrey Kleshchev
2024-06-24[WebRTC] control microphone gain via custom audio processor.Roxie Linden
Previously, there were two places audio gain could be controlled: - the device manager - the audio track The device manager audio gain control sets the system gain for all applications, not just the webrtc application. The audio track gain happens well after the audio processing where we want it to happen. So, gain control was added to the existing custom audio processor, which previously only handled calculating and retrieving the audio levels. After these changes, the microphone gain slider does impact the audio volume heard by peers.
2024-06-24Merge branch 'release/luau-scripting' into lua-appearance-listenerMnikolenko Productengine
2024-06-21#1831 Fix for redundantly rebuilding bounding boxes forever (#1832)Dave Parks
2024-06-21Merge branch 'release/webrtc-voice' of github.com:secondlife/viewer into ↵Roxie Linden
roxie/webrtc-voice-1451
2024-06-21Disable voice morphing and throw up a warning if it's previously enabled.Roxie Linden
2024-06-21Merge pull request #1725 from secondlife/lua-loginnat-goodspeed
UI-related Lua API work
2024-06-21Exercise the simple popup.lua APIsNat Goodspeed
2024-06-21Merge pull request #1827 from Ansariel/develop-mergefixBrad Linden
Fix some BOOL oversights during WebRTC merge
2024-06-21Merge pull request #1824 from Ansariel/developBrad Linden
Fix texture fetch request getting canceled if request counter flips over
2024-06-21Remove pre-Floater.lua versions of the floater test scripts.Nat Goodspeed
2024-06-21login.lua works now, update test_login.lua accordingly.Nat Goodspeed