Bug 564260 - Fix for plugin hangs in [@ hang | KiFastSystemCallRet | NtUserSetFocus]. r=masayuki, a=clegnitto. GECKO1924_20100413_RELBRANCH
authorBenjamin Smedberg <benjamin@smedbergs.us>
Tue, 18 May 2010 15:55:00 -0500
branchGECKO1924_20100413_RELBRANCH
changeset 34219 4cc2d2bb15ecd74f556a2763f499a60cacbfde02
parent 34216 fbd3e6d9bff06171a20c647f111a418ef83cc2bc
child 34220 32d21e6d0b33fec50d282f3402f7b78eba0cc80a
push id1334
push userjmathies@mozilla.com
push dateTue, 18 May 2010 20:55:29 +0000
reviewersmasayuki, clegnitto
bugs564260
milestone1.9.2.4
Bug 564260 - Fix for plugin hangs in [@ hang | KiFastSystemCallRet | NtUserSetFocus]. r=masayuki, a=clegnitto.
widget/src/windows/nsWindow.cpp
--- a/widget/src/windows/nsWindow.cpp
+++ b/widget/src/windows/nsWindow.cpp
@@ -3641,16 +3641,18 @@ nsWindow::IPCWindowProcHandler(UINT& msg
     case WM_SETFOCUS:
     case WM_KILLFOCUS:
     // Windowed plugins that pass sys key events to defwndproc generate
     // WM_SYSCOMMAND events to the main window.
     case WM_SYSCOMMAND:
     // Windowed plugins that fire context menu selection events to parent
     // windows.
     case WM_CONTEXTMENU:
+    // IME events fired as a result of synchronous focus changes
+    case WM_IME_SETCONTEXT:
       handled = PR_TRUE;
     break;
   }
 
   if (handled &&
       (InSendMessageEx(NULL)&(ISMEX_REPLIED|ISMEX_SEND)) == ISMEX_SEND) {
     ReplyMessage(dwResult);
   }