Skip to content

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

Closed
mattleibow wants to merge 3 commits into
release/4.150.xfrom
skia-sync/release-4.150.x
Closed

[skia-sync] Merge upstream chrome/m150#340
mattleibow wants to merge 3 commits into
release/4.150.xfrom
skia-sync/release-4.150.x

Conversation

@mattleibow

@mattleibow mattleibow commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Note

Required merge method

Merge commit only. Do not squash or rebase this PR. The two-parent merge ancestry is required
so future syncs can prove which upstream commits are already integrated.

Description

Automated upstream merge of chrome/m150.

This pull request was produced by skia-upstream-sync.

SkiaSharp issue

N/A — automated upstream synchronization.

Required SkiaSharp PR

Requires mono/SkiaSharp#4662

Areas affected

  • C API (include/c, src/c)
  • Native dependency / DEPS
  • Build (gn / build files)
  • Upstream Skia merge or rebase
  • Rendering output / behavior
  • Other

Changes

Genuine two-parent merge of upstream/chrome/m150 (a81173f17b197686dc1e6c78515de86e92ddc861)
into the release/4.150.x fork line.

  • Merge: 945e27121f05c7d6d8187528c9a63367e33b1143 — parents 73959289… (fork base) and
    a81173f17b… (target upstream).
  • In-range upstream commits (merge-base a7fb0b3c2e… → target):
    • a81173f17b — [M150] Address incorrect handling of a map pointer in SkRP. Internal SkSL
      RasterPipeline codegen correctness fix (dereference fChildEffectMap pointer before a possibly
      resizing insert) plus a regression test. No public/C API surface, no struct layout change.
    • 4452d2cbf4 — Roll infra dep. Touches only DEPS infra_revision, go.mod/go.sum,
      infra/bots/** CI tooling. No build/runtime dependency; the fork base already pinned the target
      infra_revision.
  • Conflicts: none (auto-merge). Fork base already carried the equivalent source, so the merge
    introduces no tree change while formalizing upstream git ancestry.
  • Fork-patch audit: audit_fork_patches.py --validate passes — 0 added/removed/changed patches
    (base and target upstream SHAs are identical; the fork delta is unchanged).
  • Dependencies: no enabled build/runtime dependency revision changed in range. HarfBuzz kept on
    the fork revision. agents/* / checkout_agents_internal upstream additions are inert
    (condition: False).

Testing

Native Linux x64 built from source (libSkiaSharp.so.150.0.0, libHarfBuzzSharp.so). The managed
solution validation ran against this merged submodule commit:

  • SkiaSharp.Tests (Core): Passed 5585, Skipped 171, Failed 0
  • SkiaSharp.Tests.SingletonInit: Passed 1, Skipped 0, Failed 0
  • SkiaSharp.Direct3D.Tests: Passed 2, Skipped 3, Failed 0
  • SkiaSharp.Vulkan.Tests: Passed 2, Skipped 5, Failed 0

No GpuPolicy-required backend was skipped; skips are the existing platform-policy skips only.

Human review

  • Validation performed on Linux x64 only. Windows (Direct3D real device), macOS (Metal), Android,
    iOS, and WASM were not executed and need cross-platform review.
  • Merge is a no-tree-change formalization of upstream ancestry; reviewers should confirm the
    two-parent shape and that the recorded upstream_merge_commit matches the parent cgmanifest.

Checklist

  • Targets the release/4.150.x branch
  • Changes above lists every added/changed C API export or states that none changed
  • Companion mono/SkiaSharp PR linked above

Last rendered by the sync workflow: 2026-08-04T22:13:36Z

erock2112 and others added 3 commits July 30, 2026 10:51
Bug: b/535581863
Change-Id: Idea1fd6496e8b54823f32820ae2351a6d17383f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/1308696
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Kaylee Lubick <kjlubick@google.com>
Auto-Submit: Eric Boren <borenet@google.com>
Commit-Queue: Kaylee Lubick <kjlubick@google.com>
Original change's description:
> Address incorrect handling of a map pointer in SkRP
>
> In pushChildCall, we held on to a pointer from a fChildEffectMap
> and then later dereferenced it. However, in between those
> points was a code path that could grow the map, invalidating
> the pointer. This is demonstrated in the newly added test.
>
> To fix it, we just dereference it earlier. While tracking this
> down, I found a suspicious other usage of the map which works
> in newer C++, but could break in older versions. It's trivial
> to fix Generator::writeFunction, so I handled that as well.
>
> Bug: b/540157141
> Fixed: 540157141
> Change-Id: I149b070c31d4cfefa65b30972f0b8b94441e66db
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/1308776
> Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
> Commit-Queue: Kaylee Lubick <kjlubick@google.com>

(cherry picked from commit 5b90a36)

Bug: 541110610,b/540157141,540157141
Change-Id: I149b070c31d4cfefa65b30972f0b8b94441e66db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/1311197
Auto-Submit: Chrome Cherry Picker <chrome-cherry-picker@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Genuine two-parent merge of upstream/chrome/m150 (a81173f) into the
release-4.150.x fork line. Brings the SkRP RasterPipeline codegen map-pointer
fix and infra dependency roll into git ancestry; the fork base already carried
the equivalent source, so the merge introduces no tree change.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@mattleibow mattleibow added partner/agentic-workflows Issues and PRs created by SkiaSharp agentic workflows. type/milestone-sync Any upstream Skia sync PR (milestone bump, same-milestone bug-fix re-sync, or tip sync). labels Aug 4, 2026
@mattleibow mattleibow closed this Aug 4, 2026
@mattleibow
mattleibow deleted the skia-sync/release-4.150.x branch August 4, 2026 22:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

partner/agentic-workflows Issues and PRs created by SkiaSharp agentic workflows. type/milestone-sync Any upstream Skia sync PR (milestone bump, same-milestone bug-fix re-sync, or tip sync).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants