From f78d965fa1ef193595740604508d7d94fde0ef84 Mon Sep 17 00:00:00 2001 From: "hbono@chromium.org" Date: Wed, 25 Feb 2009 05:17:53 +0000 Subject: 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 --- chrome/views/focus_manager.cc | 7 +++++++ 1 file changed, 7 insertions(+) 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; } -- cgit v1.1