summaryrefslogtreecommitdiff
path: root/indra/llcommon
AgeCommit message (Collapse)Author
2023-11-06Merge remote-tracking branch 'secondlife/DRTVWR-559' into DRTVWR-559Erik Kundiman
2023-11-03Fix build error from overly fancy tracy macro usage that nobody else is ↵Brad Linden
using for DRTVWR-559
2023-11-03Fix for SL-19968 objects missing timing bug due to stall during loginBrad Kittenbrink (Brad Linden)
ensure inventory skeleton loading doesn't block the message system from processing packets.
2023-10-26Merge remote-tracking branch 'secondlife/DRTVWR-559' into DRTVWR-559Erik Kundiman
2023-10-25Merge remote-tracking branch 'origin/main' into DRTVWR-559Brad Linden
2023-10-17SL-20476: Don't let the compiler know we intend to crash.Nat Goodspeed
clang has gotten smart enough to recognize an inline attempt to store to address zero. Fool it by storing to an address passed as a parameter, and pass nullptr from a different source file.
2023-10-12SL-18837: Unify all llrand_test.cpp in-range tests.Nat Goodspeed
The header file documents that no llrand function should ever return a value equal to the passed extent, so the one test in llrand_test.cpp that checked less than or equal to the high end of the range was anomalous. But changing that to an exclusive range means that we no longer need separate exclusive range and inclusive range functions. Replace ensure_in_range_using(), ensure_in_exc_range() and ensure_in_inc_range() with a grand unified (simplified) ensure_in_range() function.
2023-10-05SL-18837: When llrand_test.cpp fails, display the failing value.Nat Goodspeed
It's frustrating and unactionable to have a failing test report merely that the random value was greater than the specified high end. Okay, so what was the value? If it's supposed to be less than the high end, did it happen to be equal? Or was it garbage? We can't reproduce the failure by rerunning! The new ensure_in_exc_range(), ensure_in_inc_range() mechanism is somewhat complex because exactly one test allows equality with the high end of the expected range, where the rest mandate that the function return less than the high end. If that's a bug in the test -- if every llrand function is supposed to return less than the high end -- then we could simplify the test logic.
2023-10-04SL-18837: Merge branch 'main' of secondlife/viewer into actionsNat Goodspeed
2023-10-04Merge remote-tracking branch 'secondlife/DRTVWR-559' into DRTVWR-559Erik Kundiman
2023-10-03Merge branch 'main' (DRTVWR-567) into DRTVWR-559Andrey Kleshchev
# Conflicts: # indra/newview/CMakeLists.txt # indra/newview/VIEWER_VERSION.txt # indra/newview/llagent.cpp # indra/newview/llfloaternewfeaturenotification.cpp # indra/newview/llinventorybridge.cpp # indra/newview/llinventorymodel.cpp # indra/newview/lloutfitgallery.cpp # indra/newview/llpanelmaininventory.cpp # indra/newview/llpanelmaininventory.h # indra/newview/llsidepaneltaskinfo.cpp # indra/newview/llsidepaneltaskinfo.h # indra/newview/lltexturectrl.cpp # indra/newview/lltexturectrl.h # indra/newview/llviewerinventory.cpp # indra/newview/llviewerobject.cpp # indra/newview/llviewertexturelist.cpp # indra/newview/llviewertexturelist.h # indra/newview/skins/default/xui/en/floater_new_feature_notification.xml # indra/newview/skins/default/xui/en/menu_inventory.xml
2023-09-19Merge branch 'main' into DRTVWR-559Erik Kundiman
2023-09-19Disable assembly instructions on non x86Erik Kundiman
at least for now.
2023-09-15Merge branch 'main' into DRTVWR-559Erik Kundiman
2023-09-15Limit unused-but-set-variable to Linux when ClangErik Kundiman
Others are fine without the error turned off, and the flag might not even be available on some other's Clang.
2023-09-15Remove std::move on Linux as it fails GCCErik Kundiman
"moving a local object in a return statement prevents copy elision [-Werror=pessimizing-move]" We're back to using GCC cause Clang somehow causes CPack to not work.
2023-09-12Merge branch 'main' into DRTVWR-559Erik Kundiman
2023-09-12Set but not used variable isn't an errorErik Kundiman
Encountered when using Clang on Linux. Switched to Clang cause sometimes errors can be less escapable on GCC.
2023-09-10Fixes to get it build again on FreeBSDErik Kundiman
and hopefully GNU/Linux too.
2023-09-10Merge branch 'main' into DRTVWR-559Erik Kundiman
2023-09-08SL-18837: Make llsdserialize_test debug output conditional.Nat Goodspeed
Move hexdump() and hexmix() stream formatters to new hexdump.h for potential use by other tests. In toPythonUsing() helper function, add a temp file to receive Python script debug output, and direct debug output to that file. On test failure, dump the contents of that file to the log. Give NamedTempFile::peep() an optional target std::ostream; refactor implementation as peep_via() that accepts a callable to process each text line. Add operator<<() to stream the contents of a NamedTempFile object to ostream -- but don't use that with LL_DEBUGS(), as it flattens the file contents into a single log line. Instead add peep_log(), which streams each individual text line to LL_DEBUGS().
2023-09-08SL-18837: Add debugging output to llsdserialize_test.cpp.Nat Goodspeed
2023-09-07SL-18837: Fix minor merge glitch.Nat Goodspeed
2023-09-07SL-18837: Merge branch 'main' into actionsNat Goodspeed
2023-08-31SL-18837: Enlarge default coroutine stack size.Nat Goodspeed
A test executable on a GitHub Windows runner failed with C00000FD, which reports stack overflow. (cherry picked from commit aab7b4ba3812e5876b1205285bcfd8cff96bcac9)
2023-08-29SL-18837: On Windows, LLLeap partial final line test failed.Nat Goodspeed
Add DEBUG log output to try to diagnose.
2023-08-27Supress warnings so GCC can finish shared libsErik Kundiman
2023-08-24Merge tag '6.6.14-release'Erik Kundiman
source for viewer 6.6.14.581101
2023-08-23Merge branch main (DRTVWR-582) into DRTVWR-567Andrey Kleshchev
# Conflicts: # indra/newview/app_settings/settings.xml # indra/newview/llinventoryfunctions.cpp # indra/newview/llinventoryfunctions.h # indra/newview/llinventorymodel.cpp # indra/newview/llinventoryobserver.cpp # indra/newview/llinventoryobserver.h # indra/newview/skins/default/xui/ja/floater_inventory_item_properties.xml
2023-08-23Merge remote-tracking branch 'origin/main' into DRTVWR-559Brad Linden
2023-08-21Non x86 Darwin can use Linux's non x86 CPU clockErik Kundiman
2023-08-21Exclude net/route.h on DarwinErik Kundiman
since it doesn't seem to have any effect, and it would only get in the way on other Darwin platforms.
2023-08-17Neon is used as an alternative to SSE2Erik Kundiman
on Arm systems.
2023-08-17GLibc related code is used only on a GNU systemErik Kundiman
2023-08-01Initialise vars so they wouldn't be errors on GCCErik Kundiman
2023-07-29The Linden libraries can be installed nowErik Kundiman
Useful when installed as shared libraries, so other viewer executables can share these libraries.
2023-07-29stringop truncation warnings aren't errors on GCCErik Kundiman
2023-07-22Fix FreeBSD login problem by checking endiannessErik Kundiman
Even though the account was logged in, it would get stuck at getting region handshake. The problem was because the viewer wasn't getting the acknowledgement to the successfully sent UseCircuitCode message. I compared the message data, and it differed (from Linux) on the byte order of the Code variable (the SessionID & agent ID were right). The bytes sent to the network weren't reversed (and I was on an Intel processor).
2023-07-21SL-18837: Merge branch 'main' of secondlife/viewer into actionsNat Goodspeed
2023-07-19Undefine Status on FreeBSD tooErik Kundiman
Otherwise we'd get this. error: declaration of anonymous struct must be a definition struct Status ^ indra/llcommon/llprocess.h:284:2: warning: declaration does not declare anything [-Wmissing-declarations]
2023-07-19stricmp needs to be defined on FreeBSD tooErik Kundiman
2023-07-19System xxHash header isn't (usually?) encapsulatedErik Kundiman
2023-07-19Operating system info implementation for FreeBSDErik Kundiman
2023-07-19Macro defs on FreeBSD as it's a supported arch nowErik Kundiman
2023-07-19Processor information implementation for FreeBSDErik Kundiman
Relies on sysctl, like on Darwin, and on parsing a file, like on Linux, except the file would be /var/run/dmesg.boot.
2023-07-19Undefine NULL before defining it to 0 on FreeBSDErik Kundiman
Since C++11, NULL is promoted to nullptr on some BSD platforms. This is very problematic when used with Boost. At times it would fail during compile-time. What's worse is if it passes compile-time, but then crash during run-time, for example when some condition is to be checked for its truth, when then it would be compared to a nullptr.
2023-07-19Start including FBSD for common macro definitionsErik Kundiman
2023-07-19Deprecated declarations aren't treated as errorsErik Kundiman
I had added this to CMAKE_CXX_FLAGS in 00-Common before, and only when the compiler was Clang. But it turned out that GCC was treating them as errors too, that the addition would need to be applied to all compilers. So I prefer to put it here in llcommon with the scope set to PUBLIC cause the errors would show up again when compiling other LL libraries if the scope is set to something else.
2023-07-19stdtypes.h includes C Std Lib stddef.h for size_tErik Kundiman
in order to get rid of errors complaining that size_t was not declared in the scope.
2023-07-19Disable copy 3rd party libs when using system libsErik Kundiman