tree 9e7b28b82303c7ba26394d24cf02d3b9de58eca3
parent c6b2ced1ece2aab2a5a6420ef6ee91bfe80913fd
author skia-flutter-autoroll <skia-flutter-autoroll@skia.org> 1669155478 -0500
committer GitHub <noreply@github.com> 1669155478 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJjfUqWCRBK7hj4Ov3rIwAABKUIAG5L0DycvpdbIEAulrtD3eO7
 rj6MSeFIAyEf/zXNYp0w0q00ofaqpSWFWFNvtx67acWfhnOEIRPx/0vXahmE0l5r
 UnehMlq31To0lx+qbI9ANMwRLidh3RC4pXdYgH/MAMXj8oBs9Y6Rqx59kdYCSrP8
 VMtlH6Cif7rTQ9aLOkzbUF/wd+QtXXIopjN5sAv7s24BJzNp+Ydt8MmsLF5Z4kDc
 He2tHcVys1J6Umfm/tfOTI0mXFKQNE0g7/QvDdGGfkEPMeTrxUDckTP6tDaKD5cx
 zaqxpSvhkkSQAclzUFCIXpxYUJNfRTBCXDGMASfezer0TQq3Q49smVRMN4C5Cxw=
 =6GAf
 -----END PGP SIGNATURE-----
 

Roll Skia from 3bd2fe46f6d2 to c098e3c5d932 (2 revisions) (#37851)

https://skia.googlesource.com/skia.git/+log/3bd2fe46f6d2..c098e3c5d932

2022-11-22 brianosman@google.com Fix incorrect comments on SkGradientShader factories
2022-11-22 jcgregorio@google.com Add Pixel7 jobs.

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 jmbetancourt@google.com,kaushikiska@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