tree bcf26c8b2f2b8e2be399d0153a2a273fcab0551a
parent bd175aa5e0b6512d526c3a4538779ccc97be9534
author skia-flutter-autoroll <skia-flutter-autoroll@skia.org> 1704396081 -0500
committer GitHub <noreply@github.com> 1704396081 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJllwUxCRBK7hj4Ov3rIwAAnvYIAKWQ7aUgNNdxNtzQMDJYdCsd
 Mn2mGHyRmvChFOKghqLKPzWNlu7uTvxrm78yh2YwH9qFBA3i9uihIkuLDwIAMCvD
 bhGTQvglV6lXQB6vO5KNZDlYlKmaF0aQzpajzg0CeTG2B2VznkZBU47pNdu81ME+
 q/xX7HvbToivEaQSm+4C0fMX1Qa8tn/2s0qkJTpy51tI6h2+1w9p7FZL8/R2ssFU
 oV/oWEIwRMZygrnsLil8pyB2FBZX0i7PKM9sIOC68QIPzLZqq/oIK1fS4bCEyYCD
 UjLh0mYOdEhkprDAQ8aj2S2oJvKQq8LZva9M7m8+FAHduzFt02ueP7n8ZH2mouQ=
 =XZZL
 -----END PGP SIGNATURE-----
 

Roll Skia from 48ba1246efdf to dab831e8dcec (1 revision) (#49538)

https://skia.googlesource.com/skia.git/+log/48ba1246efdf..dab831e8dcec

2024-01-04 drott@chromium.org Cleanup code gated by SK_DISABLE_SKFONTARGS_CHANGED_TYPE

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,egdaniel@google.com,rmistry@google.com,zra@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