From fffbf6e97b15f1c588f7d35bc9a7fc9f7ff7e111 Mon Sep 17 00:00:00 2001 From: Matt Perry Date: Wed, 20 Apr 2016 17:35:49 -0400 Subject: [PATCH] Fix OverlayEntry.remove to work even after the Overlay is disposed. (#3412) --- packages/flutter/lib/src/widgets/overlay.dart | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/flutter/lib/src/widgets/overlay.dart b/packages/flutter/lib/src/widgets/overlay.dart index dc2207af430..a223eaf6c3a 100644 --- a/packages/flutter/lib/src/widgets/overlay.dart +++ b/packages/flutter/lib/src/widgets/overlay.dart @@ -215,9 +215,9 @@ class OverlayState extends State { } void _remove(OverlayEntry entry) { - setState(() { - _entries.remove(entry); - }); + _entries.remove(entry); + if (mounted) + setState(() { /* entry was removed */ }); } /// (DEBUG ONLY) Check whether a given entry is visible (i.e., not behind an opaque entry).