Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
92c3cbb
#1965 Properly terminate particles when HUD is off #2
akleshchev Sep 9, 2025
0030929
viewer#2172 AM/PM selector
akleshchev Oct 10, 2024
2ef17ab
#2618 Roles and Members tab is a mess (fix XML indents for readability)
LLGuru Sep 21, 2024
cf75c9c
#2618 Roles and Members tab is a mess
LLGuru Sep 22, 2024
c3c45e0
#1825 Use html as a default type for nosniff mime probes
akleshchev Sep 10, 2025
ac2cbdc
#4660 Unable to upload GLTF+bin with spaces in the name
akleshchev Sep 11, 2025
8eb0156
#4651 Handle window's sessions termination
akleshchev Sep 11, 2025
3b3c85d
#4651 Try distinguishing freezes from crashes
akleshchev Sep 12, 2025
f64a41f
LLLeap: handle partial lines in stderr (#4678)
marchcat Sep 15, 2025
6e24218
#789 Cannot set the material to Default or None
akleshchev Sep 16, 2025
892fb2d
#4651 Fix marker presence check
akleshchev Sep 16, 2025
e33b5c5
#4432 Change graphics quality via a debug setting
maxim-productengine Sep 17, 2025
42b09b2
#4685 EventQueueGet shouldn't use llcorehttp's backoff-retry logic
akleshchev Sep 17, 2025
1cda0a1
#4687 Fix audio device selection showing a bunch of zeros
akleshchev Sep 17, 2025
badeccb
NSIS build fix (#4698)
marchcat Sep 18, 2025
82e431e
Merge remote-tracking branch 'origin/release/2025.07' into geenz/2025…
Geenz Sep 18, 2025
f316a92
Merge pull request #4700 from secondlife/geenz/2025.07-develop
Geenz Sep 18, 2025
95725f7
#2577 Worn transparent prims no longer show with 'Highlight transparent'
LLGuru Oct 23, 2024
e918d24
#4679 Logging for crash on updateMenuOptions
akleshchev Sep 18, 2025
0fb6dc2
Fix builds after update of build-variables branch
akleshchev Sep 19, 2025
acd8794
#4671 Some locales are missing AM/PM labels
akleshchev Sep 18, 2025
569d7c6
Fix OpenJPEG uploading small textures by correctly accounting for the…
Hecklezz Sep 19, 2025
d7bd769
#4715 disable ZoomIn an object item when the region is not connected …
maxim-productengine Sep 22, 2025
a1eb714
SL-20598 Fix user not being able to reset display name
akleshchev Sep 23, 2025
921856d
#4730 Extend login timeout
akleshchev Sep 23, 2025
c2460e2
#4724 Fix performance problems with My Outfits
akleshchev Sep 22, 2025
97ff76c
#4733 When moving the cache, the old cef_cache should be removed
maxim-productengine Sep 24, 2025
351b776
#4515 Improve ordering of sub-meshes upon upload
akleshchev Sep 24, 2025
8976d69
#4723 Fix emoji warnings and missing emojis
akleshchev Sep 24, 2025
6ea4fc9
#p473 fix XUI warnings
maxim-productengine Sep 25, 2025
254ecf4
p#475 Excessive texture fetch logging on shutdown
akleshchev Sep 25, 2025
bdf942b
Merge branch 'release/2025.07' into develop
bennettgoble Sep 29, 2025
7748898
#4739 Wearables sort order reliability
akleshchev Sep 26, 2025
d5e8f51
#4750 Crash in LLToolBarView::handleDropTool
akleshchev Sep 29, 2025
f253147
#4753 Crash at LLScriptFloater::setNotificationId
akleshchev Sep 29, 2025
ec3fe8c
#3189 Fix missed else condition
akleshchev Sep 29, 2025
694bf1e
#4762 Better cacheOptimize's issue handling
akleshchev Sep 30, 2025
ee6a9e7
#4758 Extra logging to track discard 6
akleshchev Sep 30, 2025
503affd
#vp484 Crash in LLFolderViewFolder::setOpen
maxim-productengine Oct 1, 2025
69312e2
#4768 Crash at retransmitUnackedPackets
akleshchev Oct 1, 2025
f05fe9c
#4770 Crashes on ~LLCoprocedureManager()
akleshchev Oct 1, 2025
45528d3
#4773 Crash on sub_image_lines
akleshchev Oct 1, 2025
4b5d1c6
Add workflow_dispatch trigger to build workflow (#4774)
bennettgoble Oct 2, 2025
9a41335
Fix infinite growth of mLoadingPhysicsShapes in mesh repository
RyeMutt Oct 2, 2025
b277cc6
Initial VHACD based llconvexdecomposition
RyeMutt Sep 18, 2025
f846861
#4777 Fix webrtc crashing in worker threads on shutdown
akleshchev Oct 2, 2025
a54a96a
#1759 Fix texture picker using IMG_WHITE for blank materials
akleshchev Oct 3, 2025
5fe152c
Fix #4195: Preserve transforms when switching PBR materials (#4725)
Aqil-Ahmad Oct 6, 2025
9c28607
#4195 Clear code from a merge conflict
akleshchev Oct 6, 2025
d9db7bb
p#480 Collada vs GLTF Mesh Import Naming Convention
akleshchev Oct 6, 2025
688224a
#4772 fix group ownership detection for deeded objects
maxim-productengine Oct 7, 2025
eb9cb1a
#4794 SceneLoadRearMaxRadiusFraction not stored as a fraction
akleshchev Oct 7, 2025
69d7c0f
secondlife/viewer#2570: Fix baked texture shared between avatars when…
cosmic-linden Nov 11, 2024
d76d0c2
#4796 Preferences' mic volume slider had no effect.
akleshchev Oct 7, 2025
6fc138d
p#351 Mark RenderMaxOpenGLVersion as Windows specific
akleshchev Oct 8, 2025
c257304
#4803 Fix crash on cameraUnderWater
akleshchev Oct 8, 2025
c15ba87
#4806 Crash at getPrimaryFormat
akleshchev Oct 9, 2025
400351f
#4777 Fix crash on missing factory
akleshchev Oct 9, 2025
3445a01
#4782 Improve wearing multiple items
akleshchev Oct 8, 2025
6efde0b
Merge pull request #4809 from secondlife/andreyk/viewer_4777
Geenz Oct 10, 2025
2cdcd33
Merge pull request #4783 from RyeMutt/rye/convexdecomp
Geenz Oct 10, 2025
46b4ea4
#4811 #4813 Fixed RemoveItemWarn invalid notification and deleting no…
Hecklezz Oct 13, 2025
3825722
viewer#3018 Expose mouse wrap in UI
akleshchev Nov 12, 2024
449f64c
#2818 Creating a link to an empty notecard fails
akleshchev Oct 13, 2025
062b8d1
Fix Japanese Translation (#743)
sakuranoelfayray Oct 13, 2025
083a971
Avoid stack-buffer overruns in llprocess_test.cpp (#4824)
marchcat Oct 13, 2025
167b7ba
#3263 Repeat Notification Noise on Find Emoji Floater
akleshchev Oct 14, 2025
851a503
#3971 Fix wrong material type when 'editing linked'
akleshchev Oct 14, 2025
1f608d8
p#490 Fix missing Lossless check
akleshchev Oct 15, 2025
8679b86
#2570 Fix extra setGLTFRenderMaterial
akleshchev Oct 15, 2025
6cdd9cf
Fix C26444 compiler warning (creating unnamed RAII instances that cou…
Ansariel Oct 15, 2025
9f19243
#2531 Fix gray background tiles in the Minimap (#4815)
fmartian Oct 16, 2025
790c52f
Fix erroneous check for __attribute__ definition introduced with APR …
Ansariel Oct 14, 2025
03fa846
#4757 Fix missing quotes
akleshchev Oct 16, 2025
b011263
#3379 Fix callback cleanup
akleshchev Oct 16, 2025
ad374a0
#4701 Fix incorrect architecture in package's name
akleshchev Oct 16, 2025
01a7994
Merge pull request #4842 from secondlife/andreyk/viewer_4701
Geenz Oct 16, 2025
bbc2ad8
Merge remote-tracking branch 'origin/main' into geenz/main-to-develop
Geenz Oct 17, 2025
3ca323d
Merge pull request #4850 from secondlife/geenz/main-to-develop
Geenz Oct 17, 2025
0182399
Bump viewer version tp 7.2.3 after 2025.07 release
akleshchev Oct 18, 2025
f0d8e8f
Introduce dependabot configuration for Github Actions (#4859)
RyeMutt Oct 20, 2025
11f73b0
Fix tabs and trailing spaces in objc sources
RyeMutt Oct 19, 2025
993851c
Ignore tabs to spaces for objc in blame
RyeMutt Oct 19, 2025
c847a5e
Update pre-commit hooks to v6.0.0
RyeMutt Oct 19, 2025
41e9595
Rework new convex decomp into a physicsextensions stub package and fi…
RyeMutt Oct 20, 2025
0369072
#4861 Crash at LLVolumeFace::createOctree
akleshchev Oct 20, 2025
53041ad
Bump pre-commit/action from 3.0.0 to 3.0.1 (#4864)
dependabot[bot] Oct 20, 2025
6f1df1a
Bump actions/checkout from 4 to 5 (#4867)
dependabot[bot] Oct 20, 2025
e129581
Improve LLFile to be consistent between Windows and Linux/Mac
RolfKal Oct 14, 2025
49a850c
Remove a trailing space and a missed LLFile::remove() call right befo…
RolfKal Oct 15, 2025
2adf1bb
Remove trailing space
RolfKal Oct 16, 2025
f58a7c7
Make changes according to recommendations by Copilot
fmartian Oct 18, 2025
aa49a3d
Fix typo in comment
fmartian Oct 20, 2025
528c4b5
#2427 Show torn off chat when clicking on a message popup
akleshchev Oct 20, 2025
9a2ff16
#4871 Fix webrtc crash on tuningGetEnergy
akleshchev Oct 21, 2025
0d5138c
#4839 Crash at LLPluginProcessParent::poll
akleshchev Oct 21, 2025
4e2a966
Merge from secondlife/develop into 2025.08
akleshchev Oct 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Replace tabs with spaces
1b68f71348ecf3983b76b40d7940da8377f049b7
33418a77b716e122da9778869cdbabe97c83ff37
6b974724826a038b0db794460b322eb4921da735
# Trim trailing whitespace
a0b3021bdcf76859054fda8e30abb3ed47749e83
8444cd9562a6a7b755fcb075864e205122354192
Expand Down
7 changes: 7 additions & 0 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
version: 2
updates:

- package-ecosystem: github-actions
directory: /
schedule:
interval: monthly
9 changes: 5 additions & 4 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
name: Build

on:
workflow_dispatch:
pull_request:
push:
branches: ["main", "release/*", "project/*"]
Expand Down Expand Up @@ -85,7 +86,7 @@ jobs:
variants: ${{ matrix.configuration }}
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}

Expand All @@ -94,14 +95,14 @@ jobs:
with:
python-version: "3.11"
- name: Checkout build variables
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
repository: secondlife/build-variables
ref: master
path: .build-variables

- name: Checkout master-message-template
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
repository: secondlife/master-message-template
path: .master-message-template
Expand Down Expand Up @@ -309,7 +310,7 @@ jobs:
steps:
- name: Sign and package Windows viewer
if: env.AZURE_KEY_VAULT_URI && env.AZURE_CERT_NAME && env.AZURE_CLIENT_ID && env.AZURE_CLIENT_SECRET && env.AZURE_TENANT_ID
uses: secondlife/viewer-build-util/sign-pkg-windows@v2
uses: secondlife/viewer-build-util/sign-pkg-windows@v2.0.4
with:
vault_uri: "${{ env.AZURE_KEY_VAULT_URI }}"
cert_name: "${{ env.AZURE_CERT_NAME }}"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pre-commit.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: actions/setup-python@v4
with:
python-version: 3.x
- uses: pre-commit/action@v3.0.0
- uses: pre-commit/action@v3.0.1
8 changes: 4 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ repos:
- id: no-trigraphs
- id: copyright
- id: end-of-file
files: \.(cpp|c|h|py|glsl|cmake|txt)$
files: \.(cpp|c|m|mm|h|py|glsl|cmake|txt)$
exclude: language.txt
- id: indent-with-spaces
files: \.(cpp|c|h|inl|py|glsl|cmake)$
files: \.(cpp|c|m|mm|h|inl|py|glsl|cmake)$
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
rev: v6.0.0
hooks:
- id: check-xml
- id: mixed-line-ending
- id: trailing-whitespace
files: \.(cpp|c|h|inl|py|glsl|cmake|yaml|sh)$
files: \.(cpp|c|m|mm|h|inl|py|glsl|cmake|yaml|sh)$
84 changes: 32 additions & 52 deletions autobuild.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1460,58 +1460,6 @@
<key>name</key>
<string>llphysicsextensions_source</string>
</map>
<key>llphysicsextensions_stub</key>
<map>
<key>platforms</key>
<map>
<key>darwin64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>f290b000b31f9e36f2489946cbc99f5e</string>
<key>url</key>
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/59995/563653/llphysicsextensions_stub-1.0.542456-darwin64-542456.tar.bz2</string>
</map>
<key>name</key>
<string>darwin64</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>711f4ec769e4b5f59ba25ee43c11bcbc</string>
<key>url</key>
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/4724/14846/llphysicsextensions_stub-1.0.504712-linux64-504712.tar.bz2</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
<key>windows64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>2e5f1f7046a49d8b0bc295aa878116bc</string>
<key>url</key>
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/60043/564063/llphysicsextensions_stub-1.0.542456-windows-542456.tar.bz2</string>
</map>
<key>name</key>
<string>windows64</string>
</map>
</map>
<key>license</key>
<string>internal</string>
<key>license_file</key>
<string>LICENSES/llphysicsextensions.txt</string>
<key>copyright</key>
<string>Copyright (c) 2010, Linden Research, Inc.</string>
<key>version</key>
<string>1.0.542456</string>
<key>name</key>
<string>llphysicsextensions_stub</string>
</map>
<key>llphysicsextensions_tpv</key>
<map>
<key>platforms</key>
Expand Down Expand Up @@ -2934,6 +2882,38 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>description</key>
<string>Discord Social SDK</string>
</map>
<key>vhacd</key>
<map>
<key>platforms</key>
<map>
<key>common</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>140d8fc952a10edb5f2d72ab405336019ef32cadfa64f0cfce76c9de4bc6268cbc87cc8cd89d3417fb78b531d441701afc8d016bafe4bd275df2707f7daf1387</string>
<key>hash_algorithm</key>
<string>blake2b</string>
<key>url</key>
<string>https://github.com/AlchemyViewer/3p-vhacd/releases/download/v4.1.0-r2/vhacd-4.1.0-r2-common-18166921729.tar.zst</string>
</map>
<key>name</key>
<string>common</string>
</map>
</map>
<key>license</key>
<string>BSD</string>
<key>license_file</key>
<string>LICENSES/vhacd.txt</string>
<key>copyright</key>
<string>Copyright (c) 2011, Khaled Mamou</string>
<key>version</key>
<string>4.1.0-r2</string>
<key>name</key>
<string>vhacd</string>
<key>description</key>
<string>Voxelized Hierarchical Approximate Convex Decomposition</string>
</map>
</map>
<key>package_description</key>
<map>
Expand Down
2 changes: 1 addition & 1 deletion build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ installer_Darwin()
{
local package_name="$1"
local package_dir="$(build_dir_Darwin)/newview/"
local pattern=".*$(viewer_channel_suffix ${package_name})_[0-9]+_[0-9]+_[0-9]+_[0-9]+_x86_64\\.dmg\$"
local pattern=".*$(viewer_channel_suffix ${package_name})_[0-9]+_[0-9]+_[0-9]+_[0-9]+_universal\\.dmg\$"
# since the additional packages are built after the base package,
# sorting oldest first ensures that the unqualified package is returned
# even if someone makes a qualified name that duplicates the last word of the base name
Expand Down
1 change: 1 addition & 0 deletions indra/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ add_subdirectory(${LIBS_OPEN_PREFIX}llinventory)
add_subdirectory(${LIBS_OPEN_PREFIX}llmath)
add_subdirectory(${LIBS_OPEN_PREFIX}llmeshoptimizer)
add_subdirectory(${LIBS_OPEN_PREFIX}llmessage)
add_subdirectory(${LIBS_OPEN_PREFIX}llphysicsextensionsos)
add_subdirectory(${LIBS_OPEN_PREFIX}llprimitive)
add_subdirectory(${LIBS_OPEN_PREFIX}llrender)
add_subdirectory(${LIBS_OPEN_PREFIX}llfilesystem)
Expand Down
5 changes: 5 additions & 0 deletions indra/cmake/APR.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,8 @@ if(DARWIN)
endif()

target_include_directories(ll::apr SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/apr-1)

# Fix erroneous check for __attribute__ definition introduced with APR 1.7.5, causing lots of "this declaration may not have extern 'C' linkage" errors in VS
file(READ ${LIBS_PREBUILT_DIR}/include/apr-1/apr.h APR_HEADER_CONTENTS)
string(REPLACE "#if !(defined(__attribute__) || defined(__has_attribute))" "#if !defined(__attribute__)" APR_HEADER_CONTENTS "${APR_HEADER_CONTENTS}")
file(WRITE ${LIBS_PREBUILT_DIR}/include/apr-1/apr.h "${APR_HEADER_CONTENTS}")
1 change: 1 addition & 0 deletions indra/cmake/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ set(cmake_SOURCE_FILES
UI.cmake
UnixInstall.cmake
Variables.cmake
VHACD.cmake
ViewerMiscLibs.cmake
VisualLeakDetector.cmake
LibVLCPlugin.cmake
Expand Down
20 changes: 12 additions & 8 deletions indra/cmake/LLPhysicsExtensions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,18 @@ if (HAVOK)
#target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensionsstub)
else()
target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensions)
target_compile_definitions( llphysicsextensions_impl INTERFACE LL_HAVOK=1 )
endif()
target_include_directories( llphysicsextensions_impl INTERFACE ${LIBS_PREBUILT_DIR}/include/llphysicsextensions)
elseif (HAVOK_TPV)
use_prebuilt_binary(llphysicsextensions_tpv)
target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensions_tpv)
else (HAVOK)
use_prebuilt_binary(llphysicsextensions_stub)
set(LLPHYSICSEXTENSIONS_SRC_DIR ${LIBS_PREBUILT_DIR}/llphysicsextensions/stub)
target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensionsstub)
endif (HAVOK)

target_include_directories( llphysicsextensions_impl INTERFACE ${LIBS_PREBUILT_DIR}/include/llphysicsextensions)
if (NOT DARWIN)
if(WINDOWS)
target_link_libraries( llphysicsextensions_impl INTERFACE ${ARCH_PREBUILT_DIRS}/llphysicsextensions_tpv.lib)
elseif(LINUX)
target_link_libraries( llphysicsextensions_impl INTERFACE ${ARCH_PREBUILT_DIRS}/libllphysicsextensions_tpv.a)
endif()
target_compile_definitions( llphysicsextensions_impl INTERFACE LL_HAVOK=1 )
endif()
target_include_directories( llphysicsextensions_impl INTERFACE ${LIBS_PREBUILT_DIR}/include/llphysicsextensions)
endif ()
9 changes: 9 additions & 0 deletions indra/cmake/VHACD.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# -*- cmake -*-
include(Prebuilt)

add_library(ll::vhacd INTERFACE IMPORTED)

use_system_binary(vhacd)
use_prebuilt_binary(vhacd)

target_include_directories(ll::vhacd SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/vhacd/)
1 change: 1 addition & 0 deletions indra/llappearance/llpolymesh.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,7 @@ bool LLPolyMeshSharedData::loadMesh( const std::string& fileName )
LLFILE* fp = LLFile::fopen(fileName, "rb"); /*Flawfinder: ignore*/
if (!fp)
{
LLError::LLUserWarningMsg::showMissingFiles();
LL_ERRS() << "can't open: " << fileName << LL_ENDL;
return false;
}
Expand Down
Loading
Loading