summaryrefslogtreecommitdiff
path: root/indra
AgeCommit message (Collapse)Author
2024-08-28Add script control to "Inventory.DoCreate" registered menu action.Nat Goodspeed
2024-08-28Merge branch 'main' into release/luau-scripting.Nat Goodspeed
2024-08-28Merge pull request #2416 from secondlife/lua-lazymodnat-goodspeed
Allow UI to have lazily-loaded submodules.
2024-08-27code clean upMnikolenko Productengine
2024-08-27Merge branch 'release/luau-scripting' into lua-inventoryMaxim Nikolenko
2024-08-26Increment viewer version to 7.1.10Nat Goodspeed
following promotion of secondlife/viewer #1829: 2024.06 Atlasaurus
2024-08-26clean up Lua prefixMnikolenko Productengine
2024-08-24Update test scripts to reference UI.Floater, not standalone Floater.Nat Goodspeed
2024-08-23Massage results from UI.popup() for ease of use.Nat Goodspeed
In particular, where the raw leap.request().response call would return {OK_okcancelbuttons=true}, just return the string 'OK' or 'Cancel'. Update existing consumer scripts.
2024-08-23Encapsulate the lazy submodule idiom as util.submoduledir().Nat Goodspeed
2024-08-23Look for lazy UI submodules in a require/UI subdirectory.Nat Goodspeed
This way encourages "UI = require 'UI'; UI.Floater" instead of just "Floater = require 'Floater'". Moreover, now we don't need UI to maintain a list of allowed submodules; that's effected by membership in the subdirectory.
2024-08-23Allow UI to have lazily-loaded submodules.Nat Goodspeed
Equip UI with an __index metamethod. When someone references an unknown key/field in UI, require() that module and cache it for future reference. Add util.setmetamethods() as a way to find or create a metatable on a specified table containing specified metamethods. Exercise the new functionality by referencing UI.popup in test_popup.lua.
2024-08-22#2397 Sanity clamp haze contribution to avoid NaN like blowouts. (#2402)Dave Parks
2024-08-22Fix for #2385: say, shout and whisper messages from the script should be ↵Mnikolenko Productengine
displayed consistently
2024-08-21mac build fixMnikolenko Productengine
2024-08-21Bump featuretable versions to fix secondlife/viewer#2345 (#2386)Brad Linden
also fixed mac High entry for RenderMirrors that got missed
2024-08-21Merge branch 'release/luau-scripting' into lua-inventoryMaxim Nikolenko
2024-08-21Add item limit for collectDescendentsIf func; add demo scriptMnikolenko Productengine
2024-08-21Improve diagnostic output for Lua atexit() functions.Nat Goodspeed
2024-08-21Suppress ~LuaStackDelta() verification during stack unwinding.Nat Goodspeed
Otherwise, an exception raised in the block containing a LuaStackDelta instance -- that might be caught -- would result in an LL_ERRS() crash. We can't expect a block exited via exception to keep its contract wrt the Lua data stack.
2024-08-20Fix a couple more set_interrupts_counter() calls.Nat Goodspeed
2024-08-20Defend timers.Timer(iterate=True) against long callbacks.Nat Goodspeed
Specifically, defend against a callback that runs so long it suspends at a point after the next timer tick.
2024-08-20Fix for #2237: intermittent Lua data stack overflow.Nat Goodspeed
Use a static unordered_map to allow a function receiving (lua_State* L) to look up the LuaState instance managing that lua_State. We've thought about this from time to time already. LuaState's constructor creates the map entry; its destructor removes it; the new static getParent(lua_State* L) method performs the lookup. Migrate lluau::set_interrupts_counter() and check_interrupts_counter() into LuaState member functions. Add a new mInterrupts counter for them. Importantly, LuaState::check_interrupts_counter(), which is indirectly called by a lua_callbacks().interrupt function, no longer performs any Lua stack operations. Empirically, it seems the Lua engine is capable of interrupting itself at a moment when re-entry confuses it. Change previous lluau::set_interrupts_counter(L, 0) calls to LuaState::getParent(L).set_interrupts_counter(0). Also add LuaStackDelta class, and a lua_checkdelta() helper macro, to verify that the Lua data stack depth on exit from a block differs from the depth on entry by exactly the expected amount. Sprinkle lua_checkdelta() macros in likely places.
2024-08-20Fix TempSet to use type VAR to store mOldValue.Nat Goodspeed
In fact we set mOldValue from mVar, and restore mVar from mOldValue, so the VAR type makes the most sense. The previous way, you'd get actual errors if you tried to use TempSet(pointervar, nullptr): that declared mOldValue to be nullptr_t, which you can't initialize from mVar.
2024-08-20Merge branch 'release/2024.06-atlasaurus' of github.com:secondlife/viewer ↵Roxie Linden
into roxie/webrtc-fix-mac-p2p-hang
2024-08-20removed unnecessary commentRoxie Linden
2024-08-20Add LL::scope_exitNat Goodspeed
2024-08-20Fix hang when incoming p2p or group calls throw up dialog.Roxie Linden
There were changes in atlasaurus that resulted in a hang for incoming p2p and group calls which throw up dialogs. The changes revolved around mutex, coroutines, job queues, and such. The fix was to do any processing that may result in callbacks from the webrtc code in a queued job instead of a coroutine.
2024-08-20#2345 Fix for mirrors not being disabled from previous viewer versions.Jonathan "Geenz" Goodman
2024-08-20Add collectDescendentsIf api for LuaMnikolenko Productengine
2024-08-20Trim trailing blank line.Nat Goodspeed
2024-08-19#2345 Disable mirrors from the feature table regardless of quality level. ↵Jonathan "Geenz" Goodman
(#2352)
2024-08-19Merge pull request #2328 from secondlife/roxie/webrtc-airpod-fixesRoxanne Skelly
2024-08-19Merge pull request #2324 from secondlife/roxie/webrtc-log-devicesRoxanne Skelly
[WebRTC] Log WebRTC devices on webrtc initialization.
2024-08-18Merge branch 'roxie/webrtc-airpod-fixes' of github.com:secondlife/viewer ↵Roxie Linden
into roxie/webrtc-airpod-fixes
2024-08-18Use the release build of webrtc to avoid pedantic asserts which are handled ↵Roxie Linden
properly anyway.
2024-08-19viewer#2296 Don't show 'are you sure you want to leave the call' when ↵Andrey Kleshchev
shutting down
2024-08-18Update webrtc to fix loss of stereo in bluetooth issue.Roxie Linden
When transitioning from mic-on hands-free mode to mic off, it's expected that the audio stream would return to stereo. Inproper logic in the mac device code in webrtc was preventing that.
2024-08-17Microphone was being prematurely enabled on login for a short period.Roxie Linden
The microphone issue was causing a short moment of sound, and was causing bluetooth headsets to switch to hands-free/one channel mode which is disruptive. Also, update webrtc to deal with issue where airpods were garbled after coming out of hands-free mode.
2024-08-17Fixes to managing device start/stop playout/recording.Roxie Linden
Fixes prevent attempting to start playout/recording before the devices are set up, to prevent restarting playout/recording, to prevent attempts to stop when not playing/recording, and so on... This should address the case where audio device changes can cause an assert. It should also address the case where audio was unnecessarily played or transmitted when connecting. And, when voice is disabled, the audio devices are not set up to play/record so there should be no disruption of bluetooth music from other apps.
2024-08-16Log WebRTC devices on webrtc initialization.Roxie Linden
2024-08-15First batch of Inventory api; raise interrupts limitMnikolenko Productengine
2024-08-15Merge remote-tracking branch 'origin/release/webrtc-voice' into ↵Brad Linden
release/2024.06-atlasaurus
2024-08-15BugSplat Crash #1504587: std::vector::empty()Alexander Gavriliuk
2024-08-15Merge remote-tracking branch 'origin/release/webrtc-voice' into ↵Brad Linden
release/2024.06-atlasaurus # Conflicts: # indra/newview/llpanelpeople.cpp
2024-08-15#2307 BugSplat Crash #1504734: LLViewerTexture::getNumFaces()Alexander Gavriliuk
2024-08-15Merge branch 'release/luau-scripting' into viewer-lua-2237Nat Goodspeed
2024-08-15Introduce lluau_checkstack(L, n); use instead of luaL_checkstack().Nat Goodspeed
luaL_checkstack() accepts a third parameter which is included in the stack overflow error message. We've been passing nullptr, leading to messages of the form "stack overflow ((null))". lluau_checkstack() implicitly passes __FUNCTION__, so we can distinguish which underlying luaL_checkstack() call encountered the stack overflow condition. Also, when calling each atexit() function, pass Luau's debug.traceback() function as the lua_pcall() error handler. This should help diagnose errors in atexit() functions.
2024-08-14Don't call virtual functions in a derived class constructorRoxie Linden
2024-08-14Voice dot not always visible after crossing region boundaries.Roxie Linden
For issue #2064 The connection to the voice server was not upgraded/downgraded to primary/secondary when crossing region boundaries, so the server sent the wrong value and the viewer chose not to display a voice dot.