Most common winetest failures on wine
Paul Vriens
paul.vriens.wine at gmail.com
Mon May 19 12:43:38 CDT 2008
Dan Kegel wrote:
> Thanks to everybody who responded to Jeremy's call
> to run winetest using the 'dotests' script at
> http://wiki.winehq.org/MakeTestFailures
>
> We now have 35 reports, and have some good data on
> which test failures are common. See the
> Most Common Failures section at the bottom.
> Here's what it says right now:
>
> The skipgood script above now also tallies tests by how many people
> they fail for. Currently, it shows:
>
> 35 shell32:shelllink
> 32 user32:msg
> 16 user32:input
> 14 ntdll:info
> 13 d3d9:visual
> 10 user32:win
> 8 ddraw:visual
> 7 urlmon:protocol
> 5 gdi32:font
> 4 winmm:wave
> 3 d3d9:query urlmon:url wininet:url
> 2 comctl32:tooltips ddraw:dsurface msxml3:domdoc quartz:referenceclock
> wininet:http
> 1 d3d8:visual d3d9:device dinput:device dsound:ds3d dsound:ds3d8
> dsound:dsound ...
>
> Let's ignore the tests that only fail for one person for the moment,
> and look at the others.
>
> shell32:shelllink fails on all winetest reports from all machines,
> including on real Windows. Yet "make test" in shell32 succeeds on this
> test. Could somebody have a look at why it reliably fails under
> winetest? I filed this as bug 13311.
>
I had a look at this one.
The problem as far as I can see lies with the fact that when we run 'make
shelllink.ok' we eventually end up in UNIXFS_build_shitemid (shfldr_unixfs.c)
where the trace shows:
trace:shell:UNIXFS_build_shitemid
(pszUnixPath="/wine/wine-git/dlls/shell32/tests/shell32_test.exe", pIDL=0x12793a)
This shell32_test.exe doesn't exist (it's shell32_test.exe.so).
So when you do (in the test directory):
ln -s shell32_test.exe.so shell32_test.exe
rm shelllink.ok
make shelllink.ok
You will see the exact same errors as with winetest.
Winetest unpacks all it's executables in a temp directory and in this case (for
me on the last run) it's showing in the trace:
trace:shell:UNIXFS_build_shitemid
(pszUnixPath="/tmp/wctSkl1EH/shell32_test.exe", pIDL=0x127712)
And that file really exists.
So I guess this issue is with this piece of code in shfldr_unixfs.c:
509 /* We are only interested in regular files and directories. */
510 if (stat(pszUnixPath, &fileStat)) return NULL;
Now we only need a solution :-)
--
Cheers,
Paul.
More information about the wine-devel
mailing list