Index: chrome/browser/ui/libgtk2ui/select_file_dialog_impl_gtk2.cc |
diff --git a/chrome/browser/ui/libgtk2ui/select_file_dialog_impl_gtk2.cc b/chrome/browser/ui/libgtk2ui/select_file_dialog_impl_gtk2.cc |
index 7eba30c545d122961717503020966d959c9538f8..03b432c309707fc943bed5fabd681ec6e049fd69 100644 |
--- a/chrome/browser/ui/libgtk2ui/select_file_dialog_impl_gtk2.cc |
+++ b/chrome/browser/ui/libgtk2ui/select_file_dialog_impl_gtk2.cc |
@@ -180,6 +180,10 @@ SelectFileDialogImplGTK::SelectFileDialogImplGTK(Listener* listener, |
} |
SelectFileDialogImplGTK::~SelectFileDialogImplGTK() { |
+ for (std::set<aura::Window*>::iterator iter = parents_.begin(); |
+ iter != parents_.end(); ++iter) { |
+ (*iter)->RemoveObserver(this); |
+ } |
while (dialogs_.begin() != dialogs_.end()) { |
gtk_widget_destroy(*(dialogs_.begin())); |
} |