RFC: Missing entry points -> skip or failure?

Nikolay Sivov nsivov at codeweavers.com
Sun Mar 21 14:22:46 CDT 2021



On 3/21/21 10:06 PM, Francois Gouget wrote:
> TestLauncher now detects missing entry points. For instance:
>
> https://testbot.winehq.org/JobDetails.pl?Key=87361&f201=exe32.report#k201
>
> rtworkq.c:0: Tests skipped: missing entry point (details below)
> | rtworkq_test.exe - Entry Point Not Found
> | The procedure entry point CoGetApartmentType could not be located in the dynamic link library ole32.dll.
>
> The two lines starting with "|" are extracted from the Windows critical 
> error dialog and clearly show the issue.
>
> The remaining question is whether this case should really be a skip 
> or a failure.

I think particular case it should not run this test on Vista at all,
because rtworkq.dll does not exist there. That's why I didn't bother
with pointer checks, CoGetApartmentType() is always available where
rtworkq.dll is available. Vista is probably a bad example.

A general failure/timeout is equally informative, screenshots then will
have first missing function name, do we need more than that?

>
> If a dll is missing the past policy was to just skip the test so I 
> carried on for missing entry points, ordinals, and indirectly missing 
> dlls (when a test links with a dll which links with a missing dll).
>
> Reporting missing entry points as failures would make it more obvious 
> that the test needs fixing to use GetProcAddress(). But in some cases, 
> such as rtworkq:rtworkq here, that may be somewhat pointless (it would 
> be unable to perform any of the current tests without 
> CoGetApartmentType()).
>
> So what's the general consensus on this?
>
>
> See also:
> https://bugs.winehq.org/show_bug.cgi?id=48208
>




More information about the wine-devel mailing list