Windows 2000 VM timing out
hugh.mcmaster at outlook.com
Mon Apr 25 08:42:07 CDT 2016
On Monday, 25 April 2016 10:57 PM, Francois Gouget wrote:
>On Mon, 25 Apr 2016, Hugh McMaster wrote:
>> The Windows 2000 VM is timing out with the following dialog message:
>> kernel32_test.exe - Entry Point Not Found
>> The procedure entry point InitializeSListHead could not be located in the dynamic link library kernel32.dll.
>> For a screenshot, see https://testbot.winehq.org/JobDetails.pl?Key=22547&log_201=1&scrshot_201=1#k201
>> I'm not sure what the cause is. I sent a patch modifying a comment by one character and the same error occurs.
> It's exactly as the message says: kernel32_test.exe imports
> InitializeSListHead(). That's not an issue on Windows XP and greater
> because they have a kernel32.dll that exports that function. But Windows
> 2000 does not have this function and so Windows fails to resolve the
> executable's imports (which happens before starting the executable), and
> pops up a dialog to inform the user. Since there is no one to dismiss
> the dialog nothing happens until the alloted 2 minutes run out and the
> test is marked as "timed out".
> The solution would be to replace this direct function call with a
> function pointer which you would initialize using GetModuleHandleA() and
> GetProcAddress(). See dlls/kernel32/tests/sync.c for instance.
Thanks for the explanation.
I checked the commit log and found the problem:
kernel32/tests: Clean up interlocked SList tests.
author: Sebastian Lackner <sebastian at fds-team.de>
Thu, 11 Feb 2016 02:53:11 +0000 (03:53 +0100)
The patch removes an if statement that checks for a valid pointer to the function.
I'll send a patch tomorrow, unless someone beats me to it. ;-)
More information about the wine-devel