Go to file
Henri Beauchamp 989cfe2f70 Fix for crash in XMLRPC reply decoding on login with large inventories
Commit 2ea5ac0c43 introduced a crash bug
due to the recursive construction of the XMLTreeNode wrapper class.
The constructor of the said class typically recurses twice as many times
as there are entries in the user's inventory list.

This commit:
- Moves the fromXMLRPCValue() method and its helper functions from the LLSD
  class/module to the LLXMLNode class, where it belongs, thus making
  LLSD::TreeNode (which was a wrapper class to avoid making llcommon
  dependant on llxml, which is still the case after this commit) totally
  moot; the fromXMLRPCValue() call is now done directly on the LLXMLNode.
- Moves the XML and XMLRPC decoding code out of the HTTP coroutine
  LLXMLRPCTransaction::Handler (coroutines got an even smaller and fixed
  stack), and into LLXMLRPCTransaction::Impl::process().
- Removes XMLTreeNode entirely, fixing the crash as a result.
2024-07-08 23:18:02 +02:00
.github Merge pull request #1819 from secondlife/brad/tag-release 2024-07-01 10:37:21 -07:00
doc secondlife/viewer#1475: Add test plan for PBR terrain texture transforms UI 2024-07-02 15:01:55 -07:00
etc fixup tabs 2024-03-11 14:41:12 -07:00
indra Fix for crash in XMLRPC reply decoding on login with large inventories 2024-07-08 23:18:02 +02:00
scripts 1836 dont store texture in system memory unless absolutely necessary (#1843) 2024-06-27 13:12:43 -05:00
.clang-format DRTVWR-497 tweak clang-format rules for argument packing 2020-08-24 13:52:57 -06:00
.editorconfig Add editorconfig 2024-05-01 08:23:35 -07:00
.git-blame-ignore-revs Updated git-blame-ignore-revs 2024-06-28 13:00:53 -07:00
.gitattributes Protect NSIS scripts from eol-style translations. (#1556) 2024-05-23 11:23:50 -07:00
.gitignore Merge branch 'main' into DRTVWR-489 2023-12-15 07:06:15 +02:00
.pre-commit-config.yaml Trim trailing whitespace 2024-05-29 08:10:00 -07:00
CONTRIBUTING.md Add a basic CONTRIBUTING.md 2024-01-26 23:58:47 -08:00
LICENSE Renamed LICENSE.txt to follow naming scheme of other repos 2022-11-18 17:10:03 -05:00
README.md Add a basic CONTRIBUTING.md 2024-01-26 23:58:47 -08:00
autobuild.xml #1111 Remove xmlrpc-epi 2024-07-01 20:20:04 +02:00
build.sh Trim trailing whitespace 2024-05-29 08:10:00 -07:00
buildscripts_support_functions SL-18837: Get buildscripts_support_functions from sling-buildscripts 2023-06-28 16:58:32 -04:00

README.md

Second Life Logo

Second Life is a free 3D virtual world where users can create, connect and chat with others from around the world. This repository contains the source code for the official client.

Open Source

Second Life provides a huge variety of tools for expression, content creation, socialization and play. Its vibrancy is only possible because of input and contributions from its residents. The client codebase has been open source since 2007 and is available under the LGPL license. The Open Source Portal contains additional information about Linden Lab's open source history and projects.

Download

Most people use a pre-built viewer release to access Second Life. Windows and macOS builds are published on the official website. More experimental viewers, such as release candidates and project viewers, are detailed on the Alternate Viewers page.

Third Party Viewers

Third party maintained forks, which include Linux compatible builds, are indexed in the Third Party Viewer Directory.

Build Instructions

Windows

Mac

Linux

Contribute

Help make Second Life better! You can get involved with improvements by filing bugs, suggesting enhancements, submitting pull requests and more. See the CONTRIBUTING and the open source portal for details.