Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix _availability_version_check for iOS 11 and 12 #48624

Merged
merged 1 commit into from
Dec 11, 2023

Conversation

zanderso
Copy link
Member

@zanderso zanderso commented Dec 4, 2023

This PR ports more of the implementation of availability checking from clang-rt into the Engine. In particular, when the call to look up the symbol _availability_version_check fails, this PR falls back on reading the platform version information out of a plist file at a well-known location, as is done here.

This change fixes a mistake in #44711, which didn't account for _availability_version_check not being available on iOS 11 and 12.

Fixes flutter/flutter#138711

@zanderso
Copy link
Member Author

zanderso commented Dec 5, 2023

@chinmaygarde if this fixes the issue on the device you have, then this PR is ready for review.

@zanderso zanderso requested a review from dnfield December 5, 2023 16:26
@chinmaygarde chinmaygarde self-assigned this Dec 5, 2023
@chinmaygarde
Copy link
Member

I can confirm that there was a crash fixed by this patch on iPhone 6 (iOS 12.5.7). Reviewing.
flutter_01

@chinmaygarde chinmaygarde removed their assignment Dec 11, 2023
@zanderso zanderso force-pushed the availability-check-fix branch 2 times, most recently from c8f07fd to bfdedb9 Compare December 11, 2023 17:07
@zanderso zanderso force-pushed the availability-check-fix branch from bfdedb9 to a027917 Compare December 11, 2023 19:04
@zanderso zanderso merged commit 5587d26 into flutter:main Dec 11, 2023
27 checks passed
@zanderso zanderso deleted the availability-check-fix branch December 11, 2023 19:51
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 11, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Dec 11, 2023
…139933)

flutter/engine@9b85b76...5587d26

2023-12-11 [email protected] Fix _availability_version_check for iOS 11 and 12 (flutter/engine#48624)
2023-12-11 [email protected] [Impeller] remove trace events that have outlived their usefulness. (flutter/engine#48856)
2023-12-11 [email protected] Fix css changes with macOS 13 and Safari (flutter/engine#48807)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] 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
zanderso added a commit to zanderso/engine that referenced this pull request Dec 12, 2023
This PR ports more of the implementation of availability checking from
clang-rt into the Engine. In particular, when the call to look up the
symbol `_availability_version_check` fails, this PR falls back on
reading the platform version information out of a plist file at a
well-known location, as is done
[here](https://github.com/llvm/llvm-project/blob/2fd66e6eb659701b9d4c88708d55d5854a246815/compiler-rt/lib/builtins/os_version_check.c#L163).

This change fixes a mistake in
flutter#44711, which didn't account for
`_availability_version_check` not being available on iOS 11 and 12.

Fixes flutter/flutter#138711
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants