Index: mojo/examples/browser/browser.cc |
diff --git a/mojo/examples/browser/browser.cc b/mojo/examples/browser/browser.cc |
index ac6f5f1dd1da4d12ecbcae5b9ed982dc3fa2ef82..146c4411a0e14080bfdd536e1631222bc74ccb93 100644 |
--- a/mojo/examples/browser/browser.cc |
+++ b/mojo/examples/browser/browser.cc |
@@ -154,6 +154,8 @@ class Browser : public ApplicationDelegate, |
Browser() : view_manager_(NULL), root_(NULL), widget_(NULL) {} |
virtual ~Browser() { |
+ if (root_) |
+ root_->RemoveObserver(this); |
} |
private: |
@@ -241,6 +243,7 @@ class Browser : public ApplicationDelegate, |
virtual void OnNodeDestroyed(view_manager::Node* node) OVERRIDE { |
DCHECK_EQ(root_, node); |
node->RemoveObserver(this); |
+ root_ = NULL; |
} |
scoped_ptr<ViewsInit> views_init_; |