summaryrefslogtreecommitdiff
path: root/indra
AgeCommit message (Collapse)Author
2023-02-01SL-18988 OSX buildfixAndrey Lihatskiy
2023-02-01Add a texture inspector and show it when hovering over an inventory textory ↵Kitty Barnett
(or folder containing - among others - exactly one texture) and when hovering over notecard embedded textures
2023-01-27Revert "SL-18581 Don't show the starter avatar toolbar button for NUX"Andrey Lihatskiy
This reverts commit 4d429b7ea31f51f653e0e2ad6b5799a515e28334.
2023-01-24Merge branch 'DRTVWR-567' of ssh://github.com/secondlife/viewer into DRTVWR-567Brad Payne (Vir Linden)
2023-01-24SL-18629 - various notes on work for D567Brad Payne (Vir Linden)
2023-01-23Merge branch 'main' into DRTVWR-567Mnikolenko Productengine
2023-01-11SL-18945 Links have no 'cut' optionAndrey Kleshchev
Links can be drag and dropped so they should be movable via 'cut' as well
2023-01-11SL-18939 Cannot copy inventory folders with copiable linksAndrey Kleshchev
2023-01-10SL-18911 My Land Holdings floater crashes viewer on the Xcode/+Monterey ↵akleshchev
branches (#47) Revert part of "DRTVWR-575: Address review comments on Xcode 14.1 type tweaks." Crash was reproduced when assigning areastr to llsd, but likely present in other cases of assigning ui strings to llsd (instead of going for lluistring's result directly copy constructor was engaged and either copy or original crashed due to invalid pointers, copy shouldn't have been created).
2023-01-09SL-18924 - basic get/set functions for thumbnail UUID, removed obsolete ↵Brad Payne (Vir Linden)
binary pack/unpack functions for inventory
2023-01-07Revert "SL-18911 [MAC] My Land Holdings floater crashes when not empty"Andrey Kleshchev
This reverts commit d6f5e5bc9424b9d45f6eeeca5d894d46dc91b279.
2023-01-07SL-18911 [MAC] My Land Holdings floater crashes when not emptyAndrey Kleshchev
2023-01-05SL-18894 The change of 'modify rights' is not recorded in IM history if the ↵Andrey Kleshchev
user is in DND mode Revert of commit for SL-15401. Messages are supposed to handle 'mute' on their own.
2023-01-05SL-18871 Debug setting's description is not scrollableAndrey Kleshchev
2023-01-04DRTVWR-575: Fix possible bad indexing in LLSD::operator[](size_t).Nat Goodspeed
One could argue that passing a negative index to an LLSD array should do something other than shrug and reference element [0], but as that's legacy behavior, it seems all too likely that the viewer sometimes relies on it. This specific problem arises if the index passed to operator[]() is negative -- either with the previous Integer parameter or with size_t (which of course reinterprets the negative index as hugely positive). The non-const ImplArray::ref() overload checks parameter 'i' and, if it appears negative, sets internal 'index' to 0. But in the next stanza, if (index >= existing size()), it calls resize() to scale the internal array up to one more than the requested index. The trouble is that it passed resize(i + 1), not the adjusted resize(index + 1). With a requested index of exactly -1, that would pass resize(0), which would result in the ensuing array[0] reference being invalid. With a requested index less than -1, that would pass resize(hugely positive) -- since, whether operator[]() accepts signed LLSD::Integer or size_t, resize() accepts std::vector::size_type. Given that the footprint of an LLSD array element is at least a pointer, the number of bytes required for resize(hugely positive) is likely to exceed available heap storage. Passing the adjusted resize(index + 1) should defend against that case.
2023-01-04DRTVWR-575: Use llsdutil.h functions for LLFloaterLandHoldings LLSDNat Goodspeed
LLFloaterLandHoldings::postBuild() was constructing an LLSD structure by assigning each map entry and array element one at a time. Chorazinallen identified a crash bug possibly caused by destroying that LLSD structure. Diagnostically try building it using nested llsd::map() and llsd::array() calls instead to see if that improves matters.
2023-01-04DRTVWR-575: Fix bug in macOS micro_sleep().Nat Goodspeed
The compiler was deducing an unsigned type for the difference (U64 desired microseconds - half KERNEL_SLEEP_INTERVAL_US). When the desired sleep was less than that constant, the difference went hugely positive, resulting in a very long snooze. Amusingly, forcing that U64 result into an S32 num_sleep_intervals worked only *because* of integer truncation: the high-order bits were discarded, resulting in a negative result as intended. Ensuring that both integer operands are signed at the outset, though, produces a more formally correct result.
2023-01-03DRTVWR-575: Replace some LLSDArray() usage with llsd::array().Nat Goodspeed
It seems newer compilers have a different interpretation of exactly when to engage LLSDArray's copy constructor. In particular, this assignment: some_LLSD_map[key] = LLSDArray(...)(...)...; used to convert the LLSDArray object directly to LLSD; now it first calls the custom copy constructor, which embeds the intended array within an outer array before assigning it into the containing map. The newer llsd::array() function avoids that problem because what it returns is already an LLSD object. Taking inventory of LLSDArray assignments of that form turned up a number of workarounds like LLSD(LLSDArray(...)). Replacing those with llsd::array() is both simpler and more readable. Tip of the hat to Chorazinallen for surfacing this issue!
2022-12-20SL-18426 At log in only a part friends reported to chat as onlineAndrey Kleshchev
Server sends updates in bulk now, so notify per agent instead of per update
2022-12-16SL-18384 Fix NSException for keyboard handlingAndrey Kleshchev
Affects accent keys for diacritical marks
2022-12-12Merge branch 'main' into DRTVWR-570-maint-QAndrey Lihatskiy
# Conflicts: # doc/contributions.txt # indra/newview/app_settings/shaders/class1/deferred/materialF.glsl # indra/newview/llfloater360capture.cpp
2022-12-12Increment viewer version to 6.6.9Nat Goodspeed
following promotion of DRTVWR-565
2022-12-12SL-16874 Added tool tips to buttons displayed by llDialog()Andrey Lihatskiy
2022-12-12SL-18826 limit teleport command usageMaxim Nikolenko
2022-12-06DRTVWR-575: Try to avoid comparison warnings in llclamp()Nat Goodspeed
2022-12-06DRTVWR-575: Defend unescape_string() against empty line.Nat Goodspeed
The unsigned index arithmetic was problematic in that case.
2022-12-06DRTVWR-575: Update a few more int lengths in llsdserialize.{h,cpp}.Nat Goodspeed
2022-12-06DRTVWR-575: Use llssize (signed size_t) for max_bytes parameters.Nat Goodspeed
Since LLSDSerialize::SIZE_UNLIMITED is negative, passing that through unsigned size_t parameters could result in peculiar behavior.
2022-12-06DRTVWR-575: Introduce LLKeyBind::endNonEmpty()Nat Goodspeed
and use it to replace dubious loops in asLLSD() and trimEmpty().
2022-12-06DRTVWR-575: Keep BufferArray::findBlock() in int domain.Nat Goodspeed
2022-12-06SL-18778 Crash at LLVoiceClient::removeObserver (#25)akleshchev
2022-12-03SL-18486 Complete Avatars floater is blank.Maxim Nikolenko
2022-12-01SL-18243 Add wear and unwear buttons on line items in Outfits floaterMaxim Nikolenko
2022-11-28SL-18718 Crash at LLEventPump::listen and connection issuesAndrey Kleshchev
Cleaner reinit and termination.
2022-11-22SL-18219 Crash getting and sending render info on exitAndrey Kleshchev
There might be other causes for sendRenderInfoToRegion and getRenderInfoFromRegion, crashing, but in some cases viewer was shutting down
2022-11-22Merge branch 'inventory_extensions', remote-tracking branch 'origin' into ↵Brad Payne (Vir Linden)
DRTVWR-567
2022-11-22SL-18629 - use AISAPI for some paths of new category creationBrad Payne (Vir Linden)
2022-11-22SL-18689 Crash at LLTabContainer::selectNextTab()Andrey Kleshchev
FPE_NOOP at "idx = (idx + 1 ) % (S32)mTabList.size();"
2022-11-22SL-18565 Prevent texture fetch crash on second login attemptAndrey Kleshchev
2022-11-21SL-18565 restoreGL should re-add bumpmapsAndrey Kleshchev
2022-11-21SL-18629 - moving createNewCategory to AIS3Brad Payne (Vir Linden)
2022-11-19Fix a thread safety issue in the GL image worker.Henri Beauchamp
LLViewerTexture::mNeedsCreateTexture needs to be an attomic bool since it is written both in the main thread and in the GL image worker thread. We can now enable threaded bump maps creation as a result of this fix. I have read the CLA Document and I hereby sign the CLA
2022-11-17SL-15869 Do not account for login menu when checking if key combination is ↵Andrey Kleshchev
avaliable Ex: Allow mapping actions to Ctrl+Alt+D
2022-11-14SL-18637 Reverted material shader changesAndrey Lihatskiy
original fix by Beq Janus
2022-11-13DRTVWR-575: Explain that NSInteger is really int64_t.Nat Goodspeed
2022-11-13DRTVWR-575: Merge brad's xcode-14.1 fixes with nat'sNat Goodspeed
2022-11-12DRTVWR-575: Address review comments on Xcode 14.1 type tweaks.Nat Goodspeed
Introduce LLSD template constructors and assignment operators to disambiguate construction or assignment from any integer type to Integer, likewise any floating point type to Real. Use new narrow() function to validate conversions. For LLSD method parameters converted from LLSD::Integer to size_t, where the method previously checked for a negative argument, make it now check for size_t converted from negative: in other words, more than S32_MAX. The risk of having a parameter forced from negative to unsigned exceeds the risk of a valid length or index over that max. In lltracerecording.cpp's PeriodicRecording, now that mCurPeriod and mNumRecordedPeriods are size_t instead of S32, defend against subtracting 1 from 0. Use narrow() to validate newly-introduced narrowing conversions. Make llclamp() return the type of the raw input value, even if the types of the boundary values differ. std::ostream::tellp() no longer returns a value we can directly report as a number. Cast to U64.
2022-11-11DRTVWR-575 fix LLGetDarwinOSInfo for xcode-14.1. NSInteger is now 64 bitsBrad Kittenbrink
2022-11-11DRTVWR-575 fix LLWorkerThread subclasses to be compatiblie with recent ↵Brad Kittenbrink
size_t changes in base class
2022-11-11DRTVWR-575 xcode-14.1 compatibility fix. add more overloads for stricter ↵Brad Kittenbrink
size_t conversions