http://bugs.winehq.org/show_bug.cgi?id=18717
Summary: .NET 3.x needs ntdll.dll.RtlEnumerateGenericTableWithoutSplaying (WPF + MILCore driver) Product: Wine Version: 1.1.22 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: ntdll AssignedTo: wine-bugs@winehq.org ReportedBy: focht@gmx.net
Hello,
affects every .NET 3.x GUI app which makes use of WPF. Both, the managed part of WPF and the (unmanaged) MILCore driver make use of the generic table API. I'm still unsure how much of the generic table API needs to be functional and what role such tables play in communication between Framework and MILCore driver.
Currently, it seems we can get away with little effort. Returning NULL from stub seems sufficient to prevent the crash and allows apps to proceed further.
--- snip --- fixme:shell:URL_ParseUrl failed to parse L"PresentationFramework" fixme:shell:URL_ParseUrl failed to parse L"PresentationCore" fixme:shell:URL_ParseUrl failed to parse L"System" fixme:shell:URL_ParseUrl failed to parse L"WindowsBase" fixme:advapi:RegisterTraceGuidsW 0x6a053a (nil) 0x32dfd0 1 0x32dfac (null) (null) 0x32dfb4 fixme:shell:URL_ParseUrl failed to parse L"PresentationCore.resources" fixme:advapi:RegisterTraceGuidsW 0x532dc234 (nil) 0x53218780 27 0x32ce8c (null) (null) 0x53355f40 fixme:seh:RtlCaptureStackBackTrace (2, 3, 0x533546cc, (nil)) stub! fixme:ntdll:RtlInitializeGenericTable (0x16cae4,0x5327d3ce,0x5327d3a0,0x5327d3b7,(nil)) stub! fixme:ntdll:RtlInitializeGenericTable (0x16cd4c,0x5328ec37,0x5327d3a0,0x5327d3b7,(nil)) stub! fixme:seh:RtlCaptureStackBackTrace (2, 3, 0x533546e4, (nil)) stub! fixme:seh:RtlCaptureStackBackTrace (2, 3, 0x533546fc, (nil)) stub! fixme:win:EnumDisplayDevicesW ((null),0,0x2d5e568,0x00000000), stub! fixme:win:EnumDisplayDevicesW ((null),1,0x2d5e568,0x00000000), stub! wine: Call from 0x7bc48066 to unimplemented function ntdll.dll.RtlEnumerateGenericTableWithoutSplaying, aborting ... fixme:advapi:RegisterEventSourceW ((null),L".NET Runtime 2.0 Error Reporting"): stub fixme:advapi:ReportEventW (0xcafe4242,0x0001,0x0000,0x000003e8,(nil),0x0008,0x000000e0,0x3009a1b4,0x6cc5c0): stub err:eventlog:ReportEventW L"edgermreader.exe" err:eventlog:ReportEventW L"1.0.0.0" err:eventlog:ReportEventW L"47c0d0da" err:eventlog:ReportEventW L"unknown" err:eventlog:ReportEventW L"0.0.0.0" err:eventlog:ReportEventW L"00000000" err:eventlog:ReportEventW L"0" err:eventlog:ReportEventW L"7bc48066" fixme:advapi:DeregisterEventSource (0xcafe4242) stub --- snip ---
While you're at it, you might also want to fix the prototype of RtlInitializeGenericTable().
--- snip dlls/ntdll/rtl.c --- PVOID WINAPI RtlInitializeGenericTable(PVOID pTable, PVOID arg2, PVOID arg3, PVOID arg4, PVOID arg5) --- snip dlls/ntdll/rtl.c ---
See: http://msdn.microsoft.com/en-us/library/ms796842.aspx Return type is VOID, additionally the parameters might be enhanced with MSDN info.
Regards