http://bugs.winehq.org/show_bug.cgi?id=33776
--- Comment #8 from Qian Hong fracting@gmail.com 2013-08-07 00:25:28 CDT --- Created attachment 45528 --> http://bugs.winehq.org/attachment.cgi?id=45528 Patch: Hack OpenProcess
Hi, confirming the bug. The attached hack makes the app happy.
--- 64-Seven.log --- 47365 0063:Call KERNEL32.OpenProcess(00100400,00000000,00000064) ret=004aef86 47366 0063:Ret KERNEL32.OpenProcess() retval=00000080 ret=004aef86 47367 0063:Call ntdll.RtlFreeHeap(002c4000,00000000,002d4850) ret=004bbf46 47368 0063:Ret ntdll.RtlFreeHeap() retval=00000001 ret=004bbf46 47369 0063:Call ntdll.RtlFreeHeap(002c4000,00000000,002d4768) ret=004bbf46 47370 0063:Ret ntdll.RtlFreeHeap() retval=00000001 ret=004bbf46 47371 0063:Call KERNEL32.GetNativeSystemInfo(0225e214) ret=004ae6cc 47372 0063:Ret KERNEL32.GetNativeSystemInfo() retval=00000000 ret=004ae6cc 47373 0063:Call KERNEL32.IsWow64Process(ffffffff,0225e238) ret=004ae6fb 47374 0063:Ret KERNEL32.IsWow64Process() retval=00000001 ret=004ae6fb 47375 0063:Call KERNEL32.GetVersionExW(0225e240) ret=004ae726 47376 0063:Ret KERNEL32.GetVersionExW() retval=00000001 ret=004ae726 47377 0063:Call KERNEL32.OpenProcess(00001000,00000000,00000064) ret=004aef86 47378 0063:Ret KERNEL32.OpenProcess() retval=00000090 ret=004aef86 47379 0063:Call KERNEL32.IsWow64Process(00000090,0225e23c) ret=004ae753 47380 0063:Ret KERNEL32.IsWow64Process() retval=00000000 ret=004ae753 /* IsWow64Process call fails, why ? */ 47381 0063:Call KERNEL32.CloseHandle(00000090) ret=004ae75a 47382 0063:Ret KERNEL32.CloseHandle() retval=00000001 ret=004ae75a --- snip ---
I have a test case to show the culprit, but I don't know how to integrate to Wine's test framework correctly, since the test case behaviors different on Wow64 and Win64, if anyone want to work on it feel free to pick up my patch, improve it and send to Wine:
https://testbot.winehq.org/JobDetails.pl?Key=26615#k203