-
Notifications
You must be signed in to change notification settings - Fork 26.8k
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 crash when using PlatformViews and BackdropFilter #127095
Comments
Hi @albatrosify I would suggest you narrow down the issue by removing the usage of 3rd party plugins/packages, unrelated/unaffected widgets, and isolating the issue with only platform views components. It would be appreciated if you could push all code to a GitHub repository since the sample contains platform code as well. Thank you! |
Until now I have not been able to reproduce this with a minimal code sample as stated above. I hoped someone can understand the crashlog a bit better than me. |
Hi @albatrosify, It seems the crash occurred when a platform view and a Hi @huycozy,
|
You are absolutely right. I had BackdropFilter on several dialogues with BlurFilter as the Filter. How did you find this? At least now we need what needs to be fixed. |
Facing the same issue. Here's the logged error:
|
Thanks @nestquick for your insights! Logs2023-05-19 11:47:22.137537+0700 Runner[85065:7961449] Metal API Validation Enabled
2023-05-19 11:47:22.871854+0700 Runner[85065:7961449] [VERBOSE-2:FlutterDarwinContextMetalImpeller.mm(35)] Using the Impeller rendering backend.
2023-05-19 11:47:23.389986+0700 Runner[85065:7962647] flutter: The Dart VM service is listening on http://127.0.0.1:63337/cqbo4X9j_Z8=/
-[MTLDebugBlitCommandEncoder internalValidateCopyFromTexture:sourceSlice:sourceLevel:sourceOrigin:sourceSize:toTexture:destinationSlice:destinationLevel:destinationOrigin:options:]:388: failed assertion `Copy From Texture Validation
destinationTexture must not be a framebufferOnly texture.
'
(lldb) This bug seems to be introduced at #124612 and has been fixed on the latest master channel. Can you please retry and confirm this? |
@huycozy Yes, it is working with the latest master channel, thanks for the heads up. @albatrosify I am also using a blur filter with a platform view, then I teared apart the code to find out what causes the crash. |
With latest Master Channel (Flutter 3.11.0-6.0.pre.156 • channel master •) and BackdropFilter Blur enabled the app crashes again.
|
@albatrosify Are you using the same sample code as @nestquick provided above? If it's different, please provide it so that we can try reproducing the issue. Thanks! |
When used BackdropFilter with webview or google map, have same issue. |
It seems the fix of #124612 has not been included in Flutter 3.10.2. |
There it says 'impeller only', but for me it's happening even if impeller is disabled. |
For anyone facing this issue, as confirmed above, please try on the latest master channel to see if it still occurs or not. Thanks!
|
Haven't tried on master but I'm having the same crash when using a |
On top of what @gabrielginter added above, we are also experiencing this issue on Flutter 3.10.3. |
I re-check this issue on the latest stable channel |
I tested it using Flutter |
I also have this issue, both on 3.10.3 and 3.10.4 |
@gabrielgarciagava @Maatteogekko Do you see the crash when running from XCode (native project) or Flutter project? It would be appreciated if you can open new issue if the result is different so that we can verify the issue properly. Thanks! |
From XCode, so I believe the issue is the same |
cc @cyanglaz I think this is related to the platform view mutator stack not handling the effect. Is this related to the changes you were working on recently? |
Weird that this issue was fixed for me when I upgraded to 3.10.3 and then when I've upgraded to 3.10.5 the app started crashing again. |
The crash is due to the partial repaint logic. When partial repaint is on, the filter object is null. PlatformView just need to account for the null filter object. |
The linked PR was approved about a week ago. Can we land this? |
) During certain partial repaint logic, the backdrop filter layer is present but the filter itself is null. We need to account for it when deciding whether to add such filter to the mutator stack. Fixes flutter/flutter#127095 [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
This is still broken on 3.10.5 |
@alexrabin The fix was merged 4 days ago. 3.10.5 was released almost 1 month ago. The fix is not released yet. |
Then shouldn't this issue be still open until the next release? |
…tter#43150) During certain partial repaint logic, the backdrop filter layer is present but the filter itself is null. We need to account for it when deciding whether to add such filter to the mutator stack. Fixes flutter/flutter#127095 [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
…tter#43150) During certain partial repaint logic, the backdrop filter layer is present but the filter itself is null. We need to account for it when deciding whether to add such filter to the mutator stack. Fixes flutter/flutter#127095 [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
Should #127587 be a hotfix? |
Need this to be hotfixed |
Hello, we really need a hotfix as this is causing a significant crash rate in a high traffic production app |
Please feel empowered to file a hotfix request. You can assign me as the reviewer of the hotfix PR :) It can be done using this link: https://github.com/flutter/flutter/issues/new?assignees=itsjustkevin%2Ccaseyhillers&labels=cp%3A+review&projects=&template=7_cherry_pick.yml&title=%5BCP%5D+%3Ctitle%3E |
we really need a hotfix too. |
…tter#43150) During certain partial repaint logic, the backdrop filter layer is present but the filter itself is null. We need to account for it when deciding whether to add such filter to the mutator stack. Fixes flutter/flutter#127095 [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of |
Is there an existing issue for this?
Steps to reproduce
Unfortunately I could not yet reproduce this bug with an example app, but in previous versions of flutter there were no issues.
This bug does not occur if no platform views are rendered. As soon as a platform view is rendered and I show for example a Dialog ontop the iOS App crashes
Logs
Logs
Flutter Doctor output
Doctor output
The text was updated successfully, but these errors were encountered: