tree c45682dfd7fe5cea29019c94b450d4709903dd50
parent 05e96cda0840e1607fb1096f7ecba339594bfadd
author skia-flutter-autoroll <skia-flutter-autoroll@skia.org> 1696491022 -0400
committer GitHub <noreply@github.com> 1696491022 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJlHmYOCRBK7hj4Ov3rIwAAhOAIAKMtBXfA7wUyxJ1QV+xShJtj
 dXJpJYBm0MfF+Fv7m2mXmSf3CHzBG0aYhcVwrp8mTY8ruijLoPM0N0zR8RsqI1Ej
 SuKY0XAFnuLvIjOQXslskIHTkNQXDIMYSVXTkPcly/EGIjTQkfV/rDOO5mzEl1bB
 OEAVHOhWEyf34IY1SFTV8nvsbvQP8modsgv8lcb5DFo7PAmxRaEvf/++ne7bxdZA
 g+p6appT7YbxpLkP/Zkhj1NcD/wCAdioF6diQVgamULSi57sCBHafkAqp5StPMyY
 r88Ct/kUy7/xhcPnPiBjMIez2Tzvq1zJQpDLfVltepJgWu0ekbEAE/5P1ocxeOg=
 =i1rz
 -----END PGP SIGNATURE-----
 

Roll Skia from f0cbcb892b2b to 2be211c972d5 (1 revision) (#46579)

https://skia.googlesource.com/skia.git/+log/f0cbcb892b2b..2be211c972d5

2023-10-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from ffb323805790 to 3d75b794df0f (7 revisions)

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,chinmaygarde@google.com,djsollen@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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