Index: chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm |
diff --git a/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm b/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm |
index 1a1c45512c99171b9a24d884945b9ed838aaf90e..ba3c7625fcd0847d8a972df81823e71cc5e52694 100644 |
--- a/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm |
+++ b/chrome/browser/ui/cocoa/toolbar/toolbar_controller.mm |
@@ -214,7 +214,6 @@ class NotificationBridge : public WrenchMenuBadgeController::Delegate { |
commands_ = commands; |
profile_ = profile; |
browser_ = browser; |
- resizeDelegate_ = resizeDelegate; |
hasToolbar_ = YES; |
hasLocationBar_ = YES; |
@@ -234,6 +233,18 @@ class NotificationBridge : public WrenchMenuBadgeController::Delegate { |
return self; |
} |
+- (void)browserWillBeDestroyed { |
+ // This method indicates imminent destruction. Destroy owned objects that hold |
+ // a weak Browser*, or pass this call onto reference counted objects. |
+ locationBarView_.reset(); |
tapted
2015/07/06 07:26:18
e.g. [locationBarView_ setController:nil] might be
jackhou1
2015/07/07 03:27:27
locationBarView_ is a C++ object.
|
+ [backMenuController_ browserWillBeDestroyed]; |
+ [forwardMenuController_ browserWillBeDestroyed]; |
+ [browserActionsController_ browserWillBeDestroyed]; |
+ [wrenchMenuController_ browserWillBeDestroyed]; |
+ |
+ browser_ = nullptr; |
+} |
+ |
- (id)initWithCommands:(CommandUpdater*)commands |
profile:(Profile*)profile |
browser:(Browser*)browser |