summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhbono@chromium.org <hbono@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-25 05:17:53 +0000
committerhbono@chromium.org <hbono@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-25 05:17:53 +0000
commitf78d965fa1ef193595740604508d7d94fde0ef84 (patch)
treeefd90f77f3e59b2963b1a219f841c1109fdfa2ca
parent113c4b002de9bddb67a1017498ff1cb540b0f759 (diff)
downloadchromium_src-f78d965fa1ef193595740604508d7d94fde0ef84.zip
chromium_src-f78d965fa1ef193595740604508d7d94fde0ef84.tar.gz
chromium_src-f78d965fa1ef193595740604508d7d94fde0ef84.tar.bz2
An experimental fix for Issue 7707.
To read crash dumps, it seems a rich-edit control crashes because it receives a WM_IME_CHAR message while it is processing a WM_IME_COMPOSITION message. Since a rich-edit control does not need WM_IME_CHAR messages, this code just blocks WM_IME_CHAR messages from being dispatched to view controls. Even though I'm not totally confident this code fixes this issue, I wish it does. BUG=7707 Review URL: http://codereview.chromium.org/21535 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10328 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/views/focus_manager.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/chrome/views/focus_manager.cc b/chrome/views/focus_manager.cc
index f18cc2c..6dac309 100644
--- a/chrome/views/focus_manager.cc
+++ b/chrome/views/focus_manager.cc
@@ -191,6 +191,13 @@ static LRESULT CALLBACK FocusWindowCallback(HWND window, UINT message,
if (RerouteMouseWheel(window, wParam, lParam))
return 0;
break;
+ case WM_IME_CHAR:
+ // Issue 7707: A rich-edit control may crash when it receives a
+ // WM_IME_CHAR message while it is processing a WM_IME_COMPOSITION
+ // message. Since view controls don't need WM_IME_CHAR messages,
+ // we prevent WM_IME_CHAR messages from being dispatched to view
+ // controls via the CallWindowProc() call.
+ return 0;
default:
break;
}