summaryrefslogtreecommitdiffstats
path: root/ash
diff options
context:
space:
mode:
authorxiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-15 17:49:43 +0000
committerxiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-15 17:49:43 +0000
commit0a704f07cc80dc9f4754f442b6c77188d3edf851 (patch)
tree1df589c460ee438d0871ea75a8be621f4ef1c54b /ash
parent7b52361dd69914600e40db052cf7c4bf8671dba8 (diff)
downloadchromium_src-0a704f07cc80dc9f4754f442b6c77188d3edf851.zip
chromium_src-0a704f07cc80dc9f4754f442b6c77188d3edf851.tar.gz
chromium_src-0a704f07cc80dc9f4754f442b6c77188d3edf851.tar.bz2
aura: Fix InputMethodBridge crash on exit.
BUG=113770 TEST=Verify crash in issue 113770 no longer happens. Review URL: http://codereview.chromium.org/9358082 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122104 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash')
-rw-r--r--ash/shell.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/ash/shell.cc b/ash/shell.cc
index c1db664..7c3e6c2 100644
--- a/ash/shell.cc
+++ b/ash/shell.cc
@@ -246,6 +246,13 @@ Shell::~Shell() {
drag_drop_controller_.reset();
window_cycle_controller_.reset();
+ // Launcher widget has a InputMethodBridge that references to
+ // input_method_filter_'s input_method_. So explicitly release launcher_
+ // before input_method_filter_. And this needs to be after we delete all
+ // containers in case there are still live browser windows which access
+ // LauncherModel during close.
+ launcher_.reset();
+
DCHECK(instance_ == this);
instance_ = NULL;
}