Skip to content

[skia-sync] Merge upstream chrome/m150#258

Closed
mattleibow wants to merge 2 commits into
skiasharpfrom
skia-sync/m150
Closed

[skia-sync] Merge upstream chrome/m150#258
mattleibow wants to merge 2 commits into
skiasharpfrom
skia-sync/m150

Conversation

@mattleibow

Copy link
Copy Markdown
Collaborator

Automated upstream merge of chrome/m150.

mono/skia Sync Summary — chrome/m150 bug fixes

Type

Same-milestone bug-fix sync (m150 → m150)

Upstream Merge Details

Field Value
Branch chrome/m150
Merge base (ours) 94451aa2839ed8ae5185d25d88784c6185381fa0
Upstream tip 9f330f1704305686dafa9eeef11de77caa5314b1
Merge commit caf4799537ffa861286559fa39ff6e99b295f874
New upstream commits 1

Upstream Commits Merged

SHA Message Files Changed Impact
9f330f1704 [graphite] Use stable collection for static bindings src/gpu/graphite/dawn/DawnGraphicsPipeline.cpp ⚪ Graphite/Dawn only

Conflict Resolution

None — merge was clean (automatic, no conflicts).

Breaking Change Analysis

Change Risk Impact on C API
DawnGraphicsPipeline: use TArray instead of std::vector for layout pointer stability ⚪ Graphite-only None — C API does not expose Graphite

Summary: Graphite-only bug fix for a use-after-free in the Dawn GPU backend's pipeline layout handling. SkiaSharp uses Ganesh, not Graphite, so there is no impact on the C API shim or any user-visible behavior.

C API Files Verified

All C API files intact post-merge:

  • src/c/*.cpp — all present, no conflicts
  • include/c/*.h — all present, no conflicts

Items Needing Human Attention

None. This is a low-risk Graphite-only bug fix.

Created by skia-upstream-sync.

lhkbob and others added 2 commits June 15, 2026 09:11
Since the layouts are passed by pointer in the `nextInChain` field,
their addresses need to stay valid until the BindGroupLayout is created.
With vector, if it ever grew, that would not remain the case. Since
there are usually only 0 to 1 immutable samplers, this likely never
happened (and also why it uses a built-in storage for 1).

Also removes the include for vector and uses TArray (we had been mixing
both throughout the file).

Bug: 520514458
Fixed: 523531101
Change-Id: I44c9566c68ab0e6c6d659ea77a423ddc50d53c76
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/1264157
Reviewed-by: Thomas Smith <thomsmit@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
(cherry picked from commit 6a4be3a)
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/1266416
Commit-Queue: Thomas Smith <thomsmit@google.com>
Merge new upstream commits from chrome/m150:
- [graphite] Use stable collection for static bindings (Bug: 520514458, Fixed: 523531101)
  - DawnGraphicsPipeline: use TArray instead of std::vector for layout pointers
  - Graphite-only change, no impact on SkiaSharp's Ganesh backend or C API

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants