Skip to content

2025.03 Cherry pick from Maint B #3708

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 25 commits into from
Mar 12, 2025
Merged

Conversation

marchcat
Copy link
Contributor

A small collection of fixes cherry-picked from Maint B.

This PR excludes any changes related to Linux; they will be added separately.

cosmic-linden and others added 23 commits March 11, 2025 01:21
# Conflicts:
#	indra/newview/llfloateremojipicker.cpp
#	indra/newview/skins/default/xui/en/floater_fast_timers.xml
# Conflicts:
#	indra/newview/llviewermedia.cpp
# Conflicts:
#	indra/newview/llphysicsshapebuilderutil.cpp
Second Life's SOCKS5 proxy has been broken on windows for at least six
years due to a conflation of milliseconds and microseconds in the APR
timeout value used when attempting to ping the proxy.

# Conflicts:
#	indra/llmessage/llproxy.cpp
# Conflicts:
#	indra/newview/llfilepicker.cpp
Ensure folder creation callbacks remain alive

# Conflicts:
#	indra/newview/llfloatercreatelandmark.cpp
#	indra/newview/llfloatercreatelandmark.h
# Conflicts:
#	indra/newview/llfloaterpreferencesgraphicsadvanced.cpp
Marketplace deliberately doesn't allow creating folders and the "New
folder from selected" is a way of creating a new folder then moving
selected items inside, therefore shouldn't be allowed.
Found by running with -fsanitze=thread
Suggestion to avoid accessing invalid memory:

In both cases memory will be allocated by can be accessed beyond bounds.

In LLPolyMesh it can be off by at least one (+x%2). Though I am not even sure if even in best case it always will be a multiple of 16.

In LLViewerJointMesh::updateFaceData the code tries to account for padding by, but the allocation in LLPolyMeshSharedData::allocateVertexData is done without any padding. Thus the sizes must not match.

Replacing the calls with memcpy as a quick fix to see if the error goes away fixed address sanitzer complaining.

It is up to debate if memcpy is a good replacement. LLVector4a::memcpyNonAliased16 was invented for performance. But on the other hand one could argue that nowadays every stdlib maintainer will very heavily optmize functions like memcpy themselves and could take advantage of CPU features the old LL implementation does not take into account.

AVX comes to mind. In any case did I not measure any of this.
# Conflicts:
#	indra/newview/llviewermedia.cpp
delete once per session, not once per instance

# Conflicts:
#	indra/newview/llviewermedia.cpp
# Conflicts:
#	indra/llxml/llxmltree.cpp
attachment list gets filled with object ids, not attachment ids
The viewer now prefers to load inventory via the capability rather than
over the deprecated Xfer system, though both are still supported.

# Conflicts:
#	indra/newview/llviewerobject.h
@marchcat marchcat linked an issue Mar 11, 2025 that may be closed by this pull request
@marchcat marchcat marked this pull request as ready for review March 11, 2025 04:02
Copy link
Collaborator

@Geenz Geenz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Commit e6f904f is kinda weird - it says Incorrect behavior of Physics Shapes rendering, and yet this doesn't seem to have anything to do with that?

@Geenz
Copy link
Collaborator

Geenz commented Mar 11, 2025

ea7b63f - this one will likely need some love post-merge. We have a new reflection probe slider in AGP.

@Geenz
Copy link
Collaborator

Geenz commented Mar 11, 2025

Other than the two commits above - that's about all I really see in here to be careful about. The physics display bit is most likely something we took elsewhere and is already, in some form, in shipping code. But I'd like some more clarity around that one. For the AGP - I'm gonna ask Steeltoe if he can come up with some alternative designs. That floater exploded in terms of settings due to PBR, Featurettes, and more recent features. If I can get just a bit more clarity around the physics display bit, then I'll give this a thumbs up.

@marchcat
Copy link
Contributor Author

it says Incorrect behavior of Physics Shapes rendering, and yet this doesn't seem to have anything to do with that?

Looks like it was already fixed in the base branch (hence the conflict), and git just picked up the rest after resolving it.

@Geenz
Copy link
Collaborator

Geenz commented Mar 11, 2025

@marchcat That's good to know. That resolves the biggest concern I had here. Other than that - just need to figure out what to do with the AGP and I think we're good here.

@marchcat marchcat merged commit b50ad90 into release/2025.03 Mar 12, 2025
11 checks passed
@marchcat marchcat deleted the marchcat/2025.03-maint-b branch March 12, 2025 02:32
@github-actions github-actions bot locked and limited conversation to collaborators Mar 12, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Backport maint-b into 2025.03
10 participants