[Bug 31442] Guild Wars 2 freezes on text input fields

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Oct 7 11:48:14 CDT 2012


http://bugs.winehq.org/show_bug.cgi?id=31442

--- Comment #37 from voidcastr <voidcastr at gmail.com> 2012-10-07 11:48:14 CDT ---
(In reply to comment #36)
> The 0x281 is WM_IME_SETCONTEXT. If that's really related, WINEDEBUG=+imm may be
> of interest, perhaps with some additional traces added to dlls/imm32/ to see
> where exactly it hangs. It's also possible that the window 0x80064 belongs to a
> different thread that isn't processing messages for some reason, e.g. because
> it's waiting for something itself.

After toying atound with +imm and some custom traces I can now confirm that
    HIMC WINAPI ImmAssociateContext(HWND hWnd, HIMC hIMC)
in dlls/imm32/imm.c hangs after the call
    SendMessageW(data->IMC.hWnd, WM_IME_SETCONTEXT, TRUE, ISC_SHOWUIALL);
at the very end of the function.

It is called by tid 0044, so I think we got the sticking point here...
literally.


Out of curiosity I just commented that line and recompiled. Result: The
application does not crash anymore when trying to chat or enter the name for a
new character (i.e. focussing a chatbox). I can now play and chat without
having to force the game to use single threaded rendering. Same result when
commenting the
    data->IMC.hWnd = hWnd;
between the two almost identical "if (IsWindow(data->IMC.hWnd))" blocks, so the
3rd param given to SendMessageW is not the problem either. Thus I suppose
something's wrong with the semantics of "data->IMC.hWnd = hWnd;" or with the
actual value of hWnd.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list