mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Prevent race condition while switching surfaces (flutter/engine#24838)
This commit is contained in:
parent
61580a2583
commit
503af63aef
@ -118,9 +118,6 @@ public class FlutterImageView extends View implements RenderSurface {
|
||||
*/
|
||||
@Override
|
||||
public void attachToRenderer(@NonNull FlutterRenderer flutterRenderer) {
|
||||
if (isAttachedToFlutterRenderer) {
|
||||
return;
|
||||
}
|
||||
switch (kind) {
|
||||
case background:
|
||||
flutterRenderer.swapSurface(imageReader.getSurface());
|
||||
|
||||
@ -1068,7 +1068,9 @@ public class FlutterView extends FrameLayout implements MouseCursorPlugin.MouseC
|
||||
public void onFlutterUiDisplayed() {
|
||||
renderer.removeIsDisplayingFlutterUiListener(this);
|
||||
onDone.run();
|
||||
flutterImageView.detachFromRenderer();
|
||||
if (!(renderSurface instanceof FlutterImageView)) {
|
||||
flutterImageView.detachFromRenderer();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user