-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
iOS: Started initializing the gpu disable sync switch based on the app state. #24503
iOS: Started initializing the gpu disable sync switch based on the app state. #24503
Conversation
9d5e620
to
8425b08
Compare
8425b08
to
7a67298
Compare
I have 2 outstanding requests to verify that this addresses customer issues (since I can't reproduce the problem). I'll wait a bit longer to land to give those customers a chance to respond. |
This shouldn't hurt. I have a theory that it fixes a few issues but was unable to verify the fix. I waited around to see if I could get some feedback from customers. I'm going to land it since that will help users test it. |
Started initializing the gpu disable syncswitch based on the app state. (flutter#24503)
…(manual transfer of the bugfix from flutter#24503)
It seems Flutter 2.0 didn't include this PR, So will there be a 1.22.6.hotfix version to fix this problem? |
With no definitive reproduction steps it was impossible for me to know if this fixed the couple of issues I suspect it might fix. In the absence of proof I couldn't recommend it for cherry-picking. |
I've finally been able to reproduce the bug and after #24958 lands the issue should be fixed. It was a hard issue to reproduce... |
Based on flutter engine with commit: 40441de - contains backport of flutter#24958 and flutter#24503
We've seen a few issues related to flutter apps launching in the background (flutter/flutter#76068 and flutter/flutter#71074). I've been unable to reproduce these bugs but I theorize that there is a race condition between launching the app and actually having the ability to access the GPU. In both cases it appears to be a result of the io thread using the GPU, possibly before the surface is created. This PR will make any accidental usage of the GPU fallback to the CPU if it happens before the app has actually become active.
I place a print statement in
-[FlutterEngine createShell:libraryURI:initialRoute:]
and it appears even during normal app launching that the app state is not active which offers further support that this is possible.Pre-launch Checklist
writing and running engine tests.
///
).If you need help, consider asking for advice on the #hackers-new channel on Discord.