tree 6c6ed6606279f169ab78e9772e69bf7b96cab02b
parent c777aae5ca1586704676ee358a442d24768c219c
author skia-flutter-autoroll <skia-flutter-autoroll@skia.org> 1697278218 -0400
committer GitHub <noreply@github.com> 1697278218 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJlKmkLCRBK7hj4Ov3rIwAA7f4IAHz9kB8IAQkHDw34shCZKPs8
 6J8lV2YYtn8bhJpZJHs2L+IfafVaXf695IkDsLvxlgnx0czooG6lWahru6dDALs6
 RZHB8X550IthsY01oajy6nSniFKDB+WUe8YBL67DT04qvf6lqliMAviT5Ir63W87
 5eokJDmthaq06Mmm0NgSk3i0bbLgIU6cxH9hxF/O+bi326drCA3CLMUq6ms95m1s
 25rZhoUsuGMS9er3K2+GvUJA75aObTp5ZH27KsGGxr22qL4zh+BRgA4ZuHmgFTJn
 FyjoI44XW7y4uwxuUBeznqtAShwqa+mIUut4s1RyKCU43vLOL+SNfChgWafRpuk=
 =vhPP
 -----END PGP SIGNATURE-----
 

Roll Skia from 1c6e0141be7b to 5bc5b4fdbe54 (1 revision) (#46923)

https://skia.googlesource.com/skia.git/+log/1c6e0141be7b..5bc5b4fdbe54

2023-10-14 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from e9f80c535365 to 19b749ea8bde (9 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,johnstiles@google.com,jsimmons@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