diff options
Diffstat (limited to 'views/widget/native_widget_view.cc')
-rw-r--r-- | views/widget/native_widget_view.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/views/widget/native_widget_view.cc b/views/widget/native_widget_view.cc index 3be3d33..911170d 100644 --- a/views/widget/native_widget_view.cc +++ b/views/widget/native_widget_view.cc @@ -22,6 +22,11 @@ NativeWidgetView::NativeWidgetView(NativeWidgetViews* native_widget) } NativeWidgetView::~NativeWidgetView() { + // Don't let NativeWidgetViews delete this again. This must be outside + // the |delete_native_widget_| clause so it gets invoked for + // WIDGET_OWNS_NATIVE_WIDGET. It is safe because |native_widget_| will + // still exist in both ways NativeWidgetView can be destroyed: by view + // hierarchy teardown and from the NativeWidgetViews destructor. native_widget_->set_delete_native_view(false); if (delete_native_widget_) delete native_widget_; |