tree feeb03a400925d730e1ec68d5891180a53ba66c1
parent 5b9d2132b7cd78b682424a31f17490fe777ba28f
author skia-flutter-autoroll <skia-flutter-autoroll@skia.org> 1704849706 -0500
committer GitHub <noreply@github.com> 1704849706 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJlnfEqCRBK7hj4Ov3rIwAAkIgIAAqM7BcXWgY/X5GBwoaOneH7
 xfM6M+xWtC7yp02X54YS45M4liUSyIWpO98i9ilHq+bgyW5xK+TCWTMgojUlpMml
 aPPcdo/1FLRNkhctDqVhm28iS/rLz5EH5XaCv8zOhIh3mUrGj6yDwrahyzVISItP
 GJ5utz+1gp7NJQiRqnRZm01tbSzb5d9GsQuDgYqFw1RVxVhFCsUE3k6Pzcr4/Ekj
 6/VGC9xQu+h6+JkMeMkRhSWEgQ3EaH2aiGnyEk5maK+vctZf/xyu1MHhhm9I67sg
 tkf2UDxlVjjc4mBllK+LdFUwFXcFuPHcleDh8WXfTBLuw7ekV/Pslu6sX9108+s=
 =FtM0
 -----END PGP SIGNATURE-----
 

Roll Skia from 4ef1837c2958 to 0e8023dc0a1a (1 revision) (#49655)

https://skia.googlesource.com/skia.git/+log/4ef1837c2958..0e8023dc0a1a

2024-01-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 37356ff6436d to 544beceafa51 (2 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 armansito@google.com,bdero@google.com,brianosman@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