tree 7ae85d111e4ddc2e002a590d0673f72b048a1feb
parent d3a2caa2b91ab4d1c1a912d4984bcb73700278a9
author engine-flutter-autoroll <engine-flutter-autoroll@skia.org> 1761565043 -0400
committer GitHub <noreply@github.com> 1761565043 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJo/1mDCRC1aQ7uu5UhlAAAd1IQADFtd+u5MwPQMmjatDT6AKud
 BgLcYndpuF0qkKqHGjYlWO7tZwa1Y5SNZvDOXCQfFaYSoWxeza3wXjJFrzj+n6Vn
 SNAdLE8zHdbrvE5EBKDahe9HVkSsRSe13pF+7zssL/Tg8bw/BiMgKBBuGL3UZaWM
 TOocf8OqFjZnIDCY3umhlWkzyMmafXfT5bv4WNU1/xB1+K91fUmtr9hl3beJLmfk
 tIhdpEAyro5ewfNFEESSzE+31OFN7FlyxhC8juZpStGyvSvhjBHN2teWN9+AYmdY
 ZeCKYoUPCvSdpOMMTVR/pbCTvKOm1yghQHW+cKU+EfVr/qHHXBZRmC4XWbQSOIdw
 G1LL77VNDoilqNAdPq15SsjD6BrwSxyeNrrLu2vwLZgJoJY1Wt+6w29kVflNjjLZ
 PkQ+K4yyXPZD2YdoFkgxRI+PjlaD4clRdBK0w3nvvOX2JklO4O9FHowItsDAbQ1q
 fEnbza52z1VaBYBKGGDEtk/qtYwHCmHxXWNcuI6EthU+3r9oqZobclJl8AWqiPE8
 9fdTRcWh0LA7E7jeiNRyWwvk0HwpF8ERw3RsU5KyVUEUg4HdB8xDnHbejPkkNaQd
 QEuBMCm5cnPrkeH0kSu9XwRK1sVPwp74FNEd6dNcedYBY19ok22zJglFb/faEVkS
 wb1MnwST9WWWnRbGeALu
 =tGLZ
 -----END PGP SIGNATURE-----
 

Roll Fuchsia Linux SDK from tKrvmvTOQITL81oOC... to ir6J2isKAYa1jNLyJ... (#177578)

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

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