Commit Graph

46066 Commits (a92f08b2bc0ee5a63f678c55f9a9d0ec0c4ff574)

Author SHA1 Message Date
Callum Prentice a92f08b2bc Fix up a couple of tiny merge conflicts after a merge with main 2023-02-13 15:08:51 -08:00
Callum Prentice 422cd237df Fix up a couple of tiny merge conflicts after a merge with main 2023-02-13 14:12:59 -08:00
Nat Goodspeed 8d21d29bd7 Increment viewer version to 6.6.10
following promotion of DRTVWR-570
2023-02-02 14:33:39 -05:00
Andrey Lihatskiy 71657b66f9 Revert "SL-18581 Don't show the starter avatar toolbar button for NUX"
This reverts commit 4d429b7ea3.
2023-01-27 22:04:11 +02:00
Andrey Kleshchev b3201e75b1 SL-18945 Links have no 'cut' option
Links can be drag and dropped so they should be movable via 'cut' as well
2023-01-11 16:03:33 +02:00
Andrey Kleshchev 007939f0a7 SL-18939 Cannot copy inventory folders with copiable links 2023-01-11 08:30:32 +02:00
akleshchev f3cd329b58
SL-18911 My Land Holdings floater crashes viewer on the Xcode/+Monterey 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-10 19:38:44 +02:00
Andrey Kleshchev 30678472ee Revert "SL-18911 [MAC] My Land Holdings floater crashes when not empty"
This reverts commit d6f5e5bc94.
2023-01-07 18:59:39 +02:00
Andrey Kleshchev d6f5e5bc94 SL-18911 [MAC] My Land Holdings floater crashes when not empty 2023-01-07 01:10:22 +02:00
Andrey Kleshchev 73933fe778 SL-18894 The change of 'modify rights' is not recorded in IM history if the user is in DND mode
Revert of commit for SL-15401. Messages are supposed to handle 'mute' on their own.
2023-01-05 18:21:53 +02:00
Andrey Kleshchev 3fd86c2f23 SL-18871 Debug setting's description is not scrollable 2023-01-05 01:34:03 +02:00
Nat Goodspeed 99c040ea99 DRTVWR-575: Fix possible bad indexing in LLSD::operator[](size_t).
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-04 17:18:31 -05:00
Nat Goodspeed 4093d5b1eb DRTVWR-575: Use llsdutil.h functions for LLFloaterLandHoldings LLSD
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-04 15:13:02 -05:00
Nat Goodspeed aa112ef17f DRTVWR-575: Fix bug in macOS micro_sleep().
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-04 12:04:56 -05:00
Nat Goodspeed bb718155bd DRTVWR-575: Replace some LLSDArray() usage with llsd::array().
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!
2023-01-03 18:06:45 -05:00
Andrey Kleshchev 6f522084ed SL-18426 At log in only a part friends reported to chat as online
Server sends updates in bulk now, so notify per agent instead of per update
2022-12-20 02:03:03 +02:00
Andrey Kleshchev 07baa83ef2 SL-18384 Fix NSException for keyboard handling
Affects accent keys for diacritical marks
2022-12-16 16:31:42 +02:00
Andrey Lihatskiy f836194516 Merge branch 'main' into DRTVWR-570-maint-Q
# Conflicts:
#	doc/contributions.txt
#	indra/newview/app_settings/shaders/class1/deferred/materialF.glsl
#	indra/newview/llfloater360capture.cpp
2022-12-12 20:53:11 +02:00
Nat Goodspeed a0c3d69c62 Increment viewer version to 6.6.9
following promotion of DRTVWR-565
2022-12-12 13:41:50 -05:00
Andrey Lihatskiy b4dd4271a1 SL-16874 Added tool tips to buttons displayed by llDialog() 2022-12-12 20:22:50 +02:00
Maxim Nikolenko ab8dc07630 SL-18826 limit teleport command usage 2022-12-12 13:13:48 +02:00
Nat Goodspeed 7d9249d180 DRTVWR-575: Try to avoid comparison warnings in llclamp() 2022-12-06 17:16:56 -05:00
Nat Goodspeed 9a7e638b67 DRTVWR-575: Defend unescape_string() against empty line.
The unsigned index arithmetic was problematic in that case.
2022-12-06 15:46:05 -05:00
Nat Goodspeed db1d757aeb DRTVWR-575: Update a few more int lengths in llsdserialize.{h,cpp}. 2022-12-06 14:40:11 -05:00
Nat Goodspeed 73aced620f DRTVWR-575: Use llssize (signed size_t) for max_bytes parameters.
Since LLSDSerialize::SIZE_UNLIMITED is negative, passing that through unsigned
size_t parameters could result in peculiar behavior.
2022-12-06 13:59:06 -05:00
Nat Goodspeed 8f6ffd489d DRTVWR-575: Introduce LLKeyBind::endNonEmpty()
and use it to replace dubious loops in asLLSD() and trimEmpty().
2022-12-06 13:04:35 -05:00
Nat Goodspeed 8ff81fc7a5 DRTVWR-575: Keep BufferArray::findBlock() in int domain. 2022-12-06 11:16:55 -05:00
akleshchev f7010e46af
SL-18778 Crash at LLVoiceClient::removeObserver (#25) 2022-12-06 04:37:07 +02:00
Maxim Nikolenko 112446804d
SL-18486 Complete Avatars floater is blank. 2022-12-03 03:04:01 +02:00
Maxim Nikolenko cfc2d2890e
SL-18243 Add wear and unwear buttons on line items in Outfits floater 2022-12-01 02:04:04 +02:00
Andrey Kleshchev 6de5986333 SL-18718 Crash at LLEventPump::listen and connection issues
Cleaner reinit and termination.
2022-11-28 17:25:43 +02:00
Andrey Lihatskiy 2dd3030993 Merge branch 'main' into DRTVWR-570-maint-Q 2022-11-23 00:33:45 +02:00
Andrey Lihatskiy e0f7b4d04b Merge branch 'main' into DRTVWR-565-maint-P 2022-11-23 00:33:33 +02:00
Andrey Kleshchev 87664fa35d SL-18219 Crash getting and sending render info on exit
There might be other causes for sendRenderInfoToRegion and getRenderInfoFromRegion, crashing, but in some cases viewer was shutting down
2022-11-22 23:08:47 +02:00
Andrey Kleshchev e231b6d8d3 SL-18689 Crash at LLTabContainer::selectNextTab()
FPE_NOOP at "idx = (idx + 1 ) % (S32)mTabList.size();"
2022-11-22 01:45:04 +02:00
Andrey Kleshchev 9ea7526f60 SL-18565 Prevent texture fetch crash on second login attempt 2022-11-22 01:24:47 +02:00
Andrey Lihatskiy 25c62f554f Merge branch 'master' into DRTVWR-570-maint-Q 2022-11-21 22:46:35 +02:00
Bennett Goble c8f08f232a SL-18218: Switch canonical_repo to GitHub URL 2022-11-21 11:51:53 -08:00
Andrey Kleshchev 96f0c95898 Merge branch master into DRTVWR-565-maint-P 2022-11-21 20:48:24 +02:00
Andrey Kleshchev 45b26b2444 SL-18565 restoreGL should re-add bumpmaps 2022-11-21 20:22:47 +02:00
Signal Linden 783926e124
Merge pull request #1 from FelixWolf/CZ-1
Various repo fixes
2022-11-18 14:22:49 -08:00
Kyler Eastridge ee37ea4aa7 Renamed LICENSE.txt to follow naming scheme of other repos 2022-11-18 17:10:03 -05:00
Signal Linden f7f163f010
Merge pull request #3 from secondlife/signal/label
Add automatic PR labels
2022-11-18 08:42:14 -08:00
Signal Linden 5c77f900ac
Merge pull request #2 from secondlife/signal/cla
Add CLA bot
2022-11-18 08:41:43 -08:00
Bennett Goble e75104b066 Add automatic PR labels 2022-11-18 07:39:54 -08:00
Bennett Goble eaf55065e2 Add CLA bot 2022-11-18 07:30:38 -08:00
Andrey Kleshchev a8ded3bcc4 SL-17135 Pull in apr-suit package
Same apr suit version, but with debug symbols
2022-11-18 14:43:54 +02:00
Kyler Eastridge 14f34041b8 Add copy of license to root directory so it is recognized by gh 2022-11-18 06:24:43 -05:00
Kyler Eastridge 35d2771cd3 Fix spelling error on license file name 2022-11-18 06:23:11 -05:00
Kyler Eastridge 4a33a0edb2 Fix readme logo for dark theme sites 2022-11-18 06:22:43 -05:00