5741 Commits
Author SHA1 Message Date
Ansariel 7773b1fb9e Merge branch 'release/2026.02' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/newview/llappviewerwin32.cpp
#	indra/newview/llviewerwindow.cpp
2026-05-07 11:23:50 +02:00
Andrey Kleshchev fd4533261e #5084 Improve watchdog's behavior #2 2026-05-05 02:49:24 +03:00
Ansariel 2624fc1bab Merge branch 'release/2026.02' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/cmake/Velopack.cmake
#	indra/lib/python/indra/util/llmanifest.py
#	indra/newview/CMakeLists.txt
#	indra/newview/app_settings/settings.xml
#	indra/newview/installers/windows/installer_template.nsi
#	indra/newview/llappviewer.cpp
#	indra/newview/llappviewerwin32.cpp
#	indra/newview/viewer_manifest.py
2026-04-08 23:01:55 +02:00
Ansariel e1e3a4871e Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm
# Conflicts:
#	indra/newview/VIEWER_VERSION.txt
#	indra/newview/installers/windows/installer_template.nsi
2026-04-08 22:27:26 +02:00
Jonathan "Geenz" GoodmanandAndrey Kleshchev 46412a6bfc Release/26.1.1 (#5530)
* Integrate Velopack installer and update framework

* Add Velopack update support for macOS and VVM integration

* Update Velopack version and dependencies

* Improve Velopack packaging for macOS

* #5346 Uninstall older non-velopack viewer (#5363)

* #5335 Fix silent uninstall asking about registry

* #5346 Uninstall older non-velopack viewer

* Use runtime viewer exe name, handle Velopack URL

* Velopack download failure diagnostic (#5520)

* Velopack download failure diagnostic

* Fix up velopack downloading updates.  Handle updates internally then hand them off to velopack. (#5524)

* More velopack changes.  Should download updates properly now.

* Don't include NSI files

* Restore optional updates, refine viewer restart behavior. (#5527)

* Add support for optional updates.

* Don't restart the viewer after the update unless it was optional.

* Setup UpdaterServiceSetting with velopack properly.

* Refine the restart behavior a bit - readd the old "the viewer must update" UX.

* If the update is still downloading, close should just reopen the downloading dialog.

---------

Co-authored-by: Jonathan "Geenz" Goodman <geenz@lindenlab.com>

* Remove SLVersionChecker from the viewer with velopack. (#5528)

* Remove SLVersionChecker updater integration

* Ensure that the portable install has the correct version number.

* Don't produce shortcuts with VPK - we do this with our post install.

* Bump viewer version from 26.1.0 to 26.1.1

* Potential fix for uninstaller not being functional.

* Fix for UpdaterServiceSetting being ignored.

* Filter for release channel when generating shortcuts.

* Add some more logging for icons on Windows builds.

* More VPK logging.

* Move velopack packaging in CI to the sign and package step.

* Enable velopack downgrade and skip older updates

* Move the version required checking into velopack's checks.

* Potential fix for downgrade prompts.

* Make sure our macOS flow mirrors Windows.

* Make sure to use the dev version of the mac sign and package.

* p#553 Only one of two uninstallers displayed

* #5346 Don't force user to shutdown velopack build for NSIS uninstall

* #5346 Ignore option for the uninstall dialog

* #5346 Fix early exit crash

* #5346 Properly reset version flag.

* Add some autodetect logic on macOS.

* p#564 Clear legacy links

* p#553 Handle uninstall records

* p#549 Permit testing release notes on a test build

* p#564 Remake nsis to velopack update flow

* p#564 Remake nsis to velopack update flow #2

* p#564 Fix incorrect value type

* p#553 Clear velopack's own registry entry in favor of a custom one

* #5346 Resolve duplicated window class name

* Bump to 2.1.0 of sign and package.

---------

Co-authored-by: Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com>
2026-04-07 19:18:44 -04:00
Ansariel b663b8cc74 Merge branch 'release/26.1.1' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/newview/llappviewer.cpp
2026-03-25 10:12:53 +01:00
Andrey Kleshchev adee09a11b #5346 Fix early exit crash 2026-03-20 18:35:53 +02:00
Andrey Kleshchev fdd7e88b8b #5084 Improve watchdog's behavior 2026-03-09 23:18:56 +02:00
Andrey Kleshchev 6eab9e63f6 #5084 Convert watchdog to a simpleton 2026-03-09 23:18:56 +02:00
Ansariel adb569b9c4 Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm-202601
# Conflicts:
#	indra/newview/quickprefs.cpp
2026-02-25 13:22:19 +01:00
Ansariel 192540d1e9 Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llui/lltabcontainer.cpp
#	indra/newview/llpanelmaininventory.cpp
#	indra/newview/llpreviewnotecard.cpp
2026-02-25 13:19:59 +01:00
Ansariel ceac995a57 Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm
# Conflicts:
#	indra/newview/llinventorygallerymenu.cpp
2026-02-25 11:53:45 +01:00
Maxim Nikolenko 90ae824b58 #5435 Update viewer indra_constants.h 2026-02-23 19:12:17 +02:00
Maxim Nikolenko f373f30a02 #5274 fix "cef_cache" subfolder not being cleared on exFAT filesystem (FS:TJ cherry-pick to fix FIRE-36357)
This fixes FAT32 filesystem too and anything using LLFile::isdir such as the Firestorm Backup & Restore
2026-02-11 04:36:25 +10:00
Ansariel 56bb949be2 Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/newview/installers/windows/installer_template.nsi
#	indra/newview/llfloaterpreference.cpp
2026-02-02 10:28:31 +01:00
Andrey Kleshchev 16003aafcd #5046 Fix a long freeze when fetching inventory 2026-01-27 00:00:08 +02:00
Ansariel b8f6d96929 Merge branch 'release/2026.01' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/newview/app_settings/settings.xml
#	indra/newview/lleventpoll.cpp
#	indra/newview/llinventorygallerymenu.cpp
#	indra/newview/lllandmarkactions.cpp
#	indra/newview/viewer_manifest.py
2026-01-25 13:33:42 +01:00
Andrey Kleshchev e42ec63bfd #5046 Fix a long freeze when fetching inventory 2026-01-24 18:42:55 +02:00
Ansariel aadca76a91 Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/cmake/Python.cmake
#	indra/llfilesystem/lldiskcache.cpp
#	indra/llphysicsextensionsos/llconvexdecompositionvhacd.cpp
#	indra/llui/llfloaterreg.h
#	indra/newview/app_settings/settings.xml
#	indra/newview/llinventorylistitem.cpp
#	indra/newview/llperfstats.h
#	indra/newview/llviewermenu.cpp
#	indra/newview/llviewerwindow.cpp
2026-01-23 10:46:14 +01:00
Rye 0b2f7fcc6b Address feedback from review
Move LLSD string->real conversion function to shared impl and utilize in xml parsing
Introducing additional error handling to menu init
Cleanup comments and trace tagging
Remove dead Memory menu entry
2026-01-21 22:07:08 +02:00
Rye 4de1ba776c Heavily reduce temporary allocations during LLSD parsing operations by utilizing moves and reducing temporary allocations 2026-01-21 22:07:08 +02:00
Rye 2f8d6420f3 Reduce temporary istringstream allocations during LLDate and GLTF override parsing 2026-01-21 22:07:08 +02:00
Rye ebde7519a8 Modernize std::type_info* usage in containers with std::type_index
Introduce operator<< for std::type_index for logging output
Utilize std::unordered_map inside llheteromap, llinitparam, llregistry
Remove unused Comparator template parameter from LLRegistry
2026-01-21 22:07:08 +02:00
Rye 0e687a83b5 Optimize various usages of std::map with frequent find access with std::unordered_map
Introduce ll::string_hash heterogeneous string hasher
2026-01-21 22:07:08 +02:00
Rye 76a80b6787 Replace usage of remaining boost::unordered containers with std
Replace LLUUID and LLMaterialID container hashing functions with more collision resistant versions
Utilize boost::hash_combine for TEMaterialPair to generate good hash distribution
Generalize is_in_map and get_if_there for usage with all mapped types
2026-01-21 22:07:08 +02:00
Ansariel 54b7bd3685 Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/cmake/Boost.cmake
#	indra/llxml/llcontrol.cpp
#	indra/newview/llcallingcard.cpp
#	indra/newview/lleventpoll.cpp
#	indra/newview/llviewermessage.cpp
#	indra/newview/skins/default/xui/en/notifications.xml
#	indra/newview/skins/default/xui/en/strings.xml
#	indra/newview/viewer_manifest.py
2026-01-19 10:50:32 +01:00
Maxim Nikolenko dcda078b6c #5274 fix "cef_cache" subfolder not being cleared on exFAT filesystem 2026-01-16 19:23:28 +02:00
Andrey Kleshchev 3ad887763b #5271 Update zlib-ng and libraries that depend on it 2026-01-14 21:44:50 +02:00
Maxim Nikolenko 147e864246 #5241 Crash at onIdleUpdateFavorites 2026-01-12 20:17:22 +02:00
Andrey Kleshchev 9de30971d3 Merge release/2026.01 into develop 2026-01-09 22:16:49 +02:00
Ansariel 1dc82e5ed6 Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llcommon/llpointer.h
#	indra/newview/llagentcamera.cpp
#	indra/newview/llfloaterpay.cpp
#	indra/newview/llfloaterregioninfo.cpp
#	indra/newview/lllocalbitmaps.cpp
#	indra/newview/llviewerobject.cpp
#	indra/newview/llviewerobject.h
#	indra/newview/llviewerparceloverlay.cpp
#	indra/newview/llworldmapview.cpp
#	indra/newview/skins/default/xui/en/floater_world_map.xml
#	indra/newview/skins/default/xui/en/panel_region_general.xml
2026-01-06 14:32:11 +01:00
Ansariel 07f96c09ac Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm-202601
# Conflicts:
#	indra/llui/llscrolllistctrl.cpp
2026-01-06 13:13:50 +01:00
Ansariel 9b9542bbee Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm
# Conflicts:
#	.github/workflows/build.yaml
#	indra/newview/app_settings/settings.xml
2026-01-06 12:55:49 +01:00
Rye 112f9b9e22 Remove unused boost::hash specialization from LLPointer and update std::hash specialization to use std::hash internally
Signed-off-by: Rye <rye@alchemyviewer.org>
2026-01-05 19:34:44 +02:00
Nat Goodspeed 9d684bc924 Migrate ~LLPointer()'s peculiar warning case to llpointer.cpp.
This allows removing #include "llerror.h" from llpointer.h.
Also remove #include "llmutex.h" as a heavy way to get
<boost/functional/hash.hpp>.

That requires adding #include "llmutex.h" to llimage.h, llnotifications.h,
llwatchdog.cpp and llvolumemgr.cpp, which were inheriting it from llpointer.h.
2026-01-05 19:34:44 +02:00
Nat Goodspeed bedd3da7c6 Explain why apparently redundant LLPointer methods are necessary.
Given templated constructors and assignment operators, it's tempting to remove
specific constructors and assignment operators with the same LLPointer<Type>
parameters. That turns out to be a mistake. Add comments to warn future
maintainers.
2026-01-05 19:34:44 +02:00
Nat Goodspeed 3fc5b69b2a Use copy-and-swap idiom for LLPointer's assignment operators.
This affords strong exception safety. Also, eliminating the conditional may
improve speed.
2026-01-05 19:34:44 +02:00
Nat Goodspeed a3ef0fa354 LLConstPointer<T> is the same as LLPointer<const T>.
Instead of restating the whole class, requiring changes to be made in parallel
(which has already failed), just make a template alias.
2026-01-05 19:34:44 +02:00
Nat Goodspeed e53f507162 Make LLPointer equality comparisons accept not-identical types.
That is, both `LLPointer::operator==()` and `operator!=()` and the free function
`operator==()` and `operator!=()` now accept pointer types other than the type
of the subject `LLPointer`, letting the compiler apply implicit pointer
conversions or diagnose an error.
2026-01-05 19:34:44 +02:00
Ansariel 334a980095 Merge branch 'release/2026.01' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llmessage/llexperiencecache.h
#	indra/llwindow/llwindowwin32.cpp
#	indra/llwindow/llwindowwin32.h
#	indra/newview/skins/default/xui/en/menu_favorites.xml
2025-12-23 14:34:51 +01:00
Andrey Kleshchev f57c934676 #3612 Log issues with landmarks and rethrown exceptions 2025-12-21 15:17:47 +02:00
Andrey Kleshchev 107ea4d849 #5084 Cover window's thread with watchdog 2025-12-20 14:19:38 +02:00
Ansariel f72547043a Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llcharacter/llkeyframemotionparam.cpp
#	indra/newview/llpanelgroup.cpp
#	indra/newview/llpanelgroup.h
#	indra/newview/skins/default/xui/en/panel_group_general.xml
2025-12-13 12:39:47 +01:00
Andrey Kleshchev 44e4177902 #2069 Activate group option in Group 2025-12-12 18:13:24 +02:00
Ansariel f8730526a6 Clean up this old merge issue 2025-12-11 15:18:44 +01:00
Andrey Kleshchev c92b0b74cb Revert #4899 "Add more functionality to LLFile and cleanup LLAPRFile"
Interferes with linux work, will be moved to a different branch and applied separately.
2025-12-11 01:42:52 +02:00
Frederick Martian 4153d67683 Make function documentation more clear about the negative offset value.
Improve error checking inside function and add comment about not updating the seek pointer when an offset of 0 is specified
2025-12-10 20:33:58 +02:00
fmartianandCopilot 71721b8c1c Update indra/llcommon/llfile.h
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-10 20:33:58 +02:00
Frederick Martian 23a3cdddee Add header include for apr_signal.h that was removed from llapr.h as it was not neededanywhere else 2025-12-10 20:33:58 +02:00
Frederick Martian 8edaa00c73 Cleanup unused LLAPRFile functions 2025-12-10 20:33:58 +02:00