[flutter_inappwebview] Fix crash on webview dispose#1026
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the flutter_inappwebview_tizen package to version 0.1.1, modifying WebView to share a single static Ecore_Evas instance instead of creating and freeing one per webview. Feedback on the changes highlights that if the static Ecore_Evas initialization fails initially, it will remain nullptr for all subsequent webview creations. A suggestion is provided to lazily initialize the static pointer to handle potential initial failures robustly.
|
This PR resolves an issue occurring in the integration_test of flutter_inappwebview. |
If WebView releases the ecore_evas used per instance in Dispose(), the EGL display shared with the flutter-tizen renderer is turned off, causing a crash on the next frame. Share a single Ecore_Evas across all WebViews and never release it.
156efc9 to
b456799
Compare
|
Do we need to apply this patch to the flutter_webview_tizen plugin? |
|
Thank you for the explanation. |
|
I confirmed that a crash occurs at Additionally, I found that while the test appeared to run correctly in CI, the count was recorded as 0. flutter_inappwebview example works correctly on the TV emulator, but further investigation is required to determine the exact reason. |
If WebView releases the ecore_evas used per instance in Dispose(), the EGL display shared with the flutter-tizen renderer is turned off, causing a crash on the next frame.
Share a single Ecore_Evas across all WebViews and never release it.