Index: chrome/browser/ui/views/extensions/extension_uninstall_dialog_view.cc |
diff --git a/chrome/browser/ui/views/extensions/extension_uninstall_dialog_view.cc b/chrome/browser/ui/views/extensions/extension_uninstall_dialog_view.cc |
index d6d3a8c5964cfc01de4fcaa12927df3a1940c441..beb4484ab249175ee4d7d2d86c3850696533ff68 100644 |
--- a/chrome/browser/ui/views/extensions/extension_uninstall_dialog_view.cc |
+++ b/chrome/browser/ui/views/extensions/extension_uninstall_dialog_view.cc |
@@ -121,8 +121,12 @@ ExtensionUninstallDialogViews::ExtensionUninstallDialogViews( |
ExtensionUninstallDialogViews::~ExtensionUninstallDialogViews() { |
// Close the widget (the views framework will delete view_). |
if (view_) { |
+ // This can only happen if the dialog is destroyed by some external means, |
+ // and neither of ExtensionUninstallAccepted() and |
+ // ExtensionUninstallCanceled() have been called. In this case, the dialog |
+ // is probably already being closed, but call Close() just to make sure. |
view_->DialogDestroyed(); |
- view_->GetWidget()->CloseNow(); |
+ view_->GetWidget()->Close(); |
sky
2014/07/23 15:29:37
If you do this, it means the WidgetDelegate/Dialog
sashab
2014/08/06 03:09:00
If that's true, then I don't think this destructor
|
} |
} |