tree b3f047ec412b7acf4b1afd3c607a92e9d7598a2a
parent ead66f5d7cd702727c32d68afc75e540f526f37a
author skia-flutter-autoroll <skia-flutter-autoroll@skia.org> 1701369744 -0500
committer GitHub <noreply@github.com> 1701369744 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJlaNeQCRBK7hj4Ov3rIwAAXssIADK0LNV8XC4zO+7ND+hPnSML
 SPeYTIdqO31xy6RUwqSX2mWUsB0gyyDgIP3U/Y4PTpvP3fs4lY+0yn6dY6gEn2q7
 AyiidJhWGS/iaXnDDDKLLtL0oJqEx/SX3N8jqNzL0YbIUpbDdme55emUEFJKVYD3
 wCh1tca/jM020ll+1qSApB6te/cTrvhoIi5vEoDHMTmsQUJWibZJvdQbijQejV/Z
 upnwdcjdq1HHTNh5CmNXxYzDhzyvpjWOIWXXhBPsxsc9Lav28D8iQQTLJJ8He2sl
 JCWZe2/4VDxa1GL8jWmyY84ieigRwxddtv2dF7RsRtejX/6fS16bEOX7rTEhMLA=
 =9Z+O
 -----END PGP SIGNATURE-----
 

Roll Skia from 0e479728cc1f to 6b4bdebaab88 (1 revision) (#48536)

https://skia.googlesource.com/skia.git/+log/0e479728cc1f..6b4bdebaab88

2023-11-30 johnstiles@google.com Add tail pointer to SkRasterPipeline_BranchIfAllLanesActiveCtx.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com,jcgregorio@google.com,matanl@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md