[Bug 24028] WaitForInputIdle doesn't return for specific application (infinite loop?)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Jan 20 22:13:28 CST 2011


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

matex3 at hotmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |matex3 at hotmail.com

--- Comment #8 from matex3 at hotmail.com 2011-01-20 22:13:27 CST ---
I can confirm this happening, at least for the Ultima Online client.
But i dont think it is only for this program.

Injection is a third party tool for UO which uses a SetWindowHookEx approach to
inject its dll into the client. So after calling CreateProcess, it first waits
with WaitForInputIdle until the client is initialized by the pe-loader. That
is, because injection hooks some IAT-entrys for controlling the
client-server-data flow.

While i am not using Injection, i can confirm this for my own dll
injector(which also hooks PeekMessage in IAT, for CPU-Reduction): When calling
WaitForInputIdle with the INFINITE parameter, _sometimes_ the function hangs
infinitely. The code still works though when using some "magic-delay", but
thats not very elegant.

In the stated example code of bug 23940 there is no use of the INFINITE
parameter so the 'bug' can't be reproduced there.

-- 
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