summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-01-26DRTVWR-489-emoji: A couple of tabs slipped into this file and our new ↵Callum Prentice
no-tabs coding policy caught it and failed the build
2023-01-26DRTVWR-489-emoji: As part of the work to get macOS version of the Viewer ↵Callum Prentice
working, the flag was introduced to warn (and therefore error out) when a virtual override was not marked with the 'override' keyword. Fixing this up involved a large number of changes and this commit represents just those changes - nothing specially from the DRTVWR-489 viewer
2023-01-26Merge branch 'xcode-14.1' into DRTVWR-489-emojiCallum Prentice
2023-01-25DRTVWR-489-emoji: declaring this variable as a U16 leads to a warning (and ↵Callum Linden
therefore an error) but only on 32bit Windows builds - 64bit is fine. I don't know why that's the case (should be both surely) but in any case, I think the variable should be declared as a size_t
2023-01-24DRTVWR-489-emoji: Trying to get to the bottom of a TeamCity build failure ↵Callum Linden
with access to TeramCity - with all the ICU4C DLLs removed, the viewer builds fine which does suggest a size/disk space issue. Trying with the (porposed) minimum set to see if this helps. Likely it won't because the main one (icudt48.dll) is much, much bigger than the others combined - but we shall see
2023-01-24DRTVWR-489-emoji: Trying to get to the bottom of a TeamCity build failure ↵Callum Linden
with access to TeramCity - one theory is that the extra size of these DLLs consumes too much disk space and results in the NSIS internal compiler error we observe - removing these tempoorarily to see what difference that makes
2023-01-24DRTVWR-489-emoji: Fix a warning when packaging Viewer installer. TeamCity ↵Callum Linden
builds fail because of 'compiler error' in NSIS - wondering if this warning triggers the error (it doesn't locally) - yes, grasphing at straws
2023-01-23DRTVWR-489-emoji: Pull in the updated ICU4C package that puts the libs and ↵Callum Linden
dlls in the right place for the Windows builds
2023-01-23DRTVWR-489-emoji: Update the machinery that copies over the ICU4C DLLs into ↵Callum Linden
the right place in Windows builds
2023-01-23DRTVWR-489-emoji: Pull in updated viewer-fonts package that includes ↵Callum Linden
'missing' Tweenmoji SVG font
2023-01-20DRTVWR-489-emoji: Pull in an updated version of 3p-icu4c that correctly ↵Callum Linden
copies over the Windows DLLs as part of the build process
2023-01-20Fix merge conflicts after auto mergeCallum Linden
2023-01-20Pull in (a) version of ICU4C - this one was built with VS 2019 and not VS ↵Callum Linden
2017 like everything else. The work to do this is large and we are switching soon to VS 2022 so this will do for now
2023-01-19DRTVWR-489-emoji: following kitty's recipe for emoji viewer - this pulls in ↵Callum Linden
3p library changes for steps 1-5 (boost, colladom, googlemock, nanosvg, viewer-fonts) - final 3p change (ICU4C) coming later
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-06Merge remote-tracking branch 'origin/master' into DRTVWR-489-emojiKitty Barnett
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-12Merge branch 'main' into DRTVWR-489-emojiCallum Prentice
2022-12-12Increment viewer version to 6.6.9Nat Goodspeed
following promotion of DRTVWR-565
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-11-28SL-18718 Crash at LLEventPump::listen and connection issuesAndrey Kleshchev
Cleaner reinit and termination.
2022-11-23Merge branch 'main' into DRTVWR-565-maint-PAndrey Lihatskiy
2022-11-21Merge pull request #6 from sldevel/masterRunitaiLinden
Fix a thread safety issue in the GL image worker.
2022-11-22SL-18565 Prevent texture fetch crash on second login attemptAndrey Kleshchev
2022-11-21SL-18218: Switch canonical_repo to GitHub URLBennett Goble
2022-11-21Merge branch master into DRTVWR-565-maint-PAndrey Kleshchev
2022-11-21SL-18565 restoreGL should re-add bumpmapsAndrey Kleshchev
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-18Merge pull request #1 from FelixWolf/CZ-1Signal Linden
Various repo fixes
2022-11-18Renamed LICENSE.txt to follow naming scheme of other reposKyler Eastridge
2022-11-18Merge pull request #3 from secondlife/signal/labelSignal Linden
Add automatic PR labels
2022-11-18Merge pull request #2 from secondlife/signal/claSignal Linden
Add CLA bot
2022-11-18Add automatic PR labelsBennett Goble
2022-11-18Add CLA botBennett Goble
2022-11-18Add copy of license to root directory so it is recognized by ghKyler Eastridge
2022-11-18Fix spelling error on license file nameKyler Eastridge
2022-11-18Fix readme logo for dark theme sitesKyler Eastridge
2022-11-16Merge branch 'DRTVWR-489-emoji' into DRTVWR-489-emojiKitty Barnett
2022-11-15Merge remote-tracking branch 'github/master'Bennett Goble
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