On Thu, 5 Jul 2007, Michael Stefaniuc wrote: [...]
But there is one test that crashes, winedebug is run automatically, does a backtrace and returns with return code 0 thus make won't detect it as error: /home/michi/work/wine/tools/runtest -q -P wine -M mshtml.dll -T ../../.. -p mshtml_test.exe.so /home/michi/work/wine/dlls/mshtml/tests/dom.c && touch dom.ok Could not load Mozilla. HTML rendering will be disabled. wine: Unhandled page fault on read access to 0x00000000 at address 0x604e9914 (thread 0023), starting debugger... Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x604e9914). ... Backtrace: =>1 0x604e9914 test_doc_elem+0xd4(doc=0x165468) [/home/michi/work/wine/dlls/mshtml/tests/dom.c:66] in mshtml_test (0x0033fdf8) ...
Yes, that's pretty bad. I'd need to be able to detect Wine crashes too and this is preventing it. On Windows it seems the process exit code is set to the exception code, typically 0xc0000005.
[...]
/home/michi/work/wine/tools/runtest -q -P wine -M gdi32.dll -T ../../.. -p gdi32_test.exe.so /home/michi/work/wine/dlls/gdi32/tests/font.c && touch font.ok font.c:1574: Test failed: A: tmDefaultChar for Goha-Tibeb Zemen 20 != 0x1f font.c:1574: Test failed: A: tmDefaultChar for Lucida Sans Typewriter ff != 0x1f font.c:1574: Test failed: A: tmDefaultChar for Lucida Sans Typewriter ff != 0x1f
I've looked into this one too and it's a big can of worms. Essentially Windows does not always trust the OS/2 TTF table so that the tmDefaultChar, tmFirstChar and tmLastChar Wine returns don't always match what Windows returns. Also some rules used by the test are incorrect (like tmLastChar == 0xf0ff for symbol fonts).
Unfortunately I've had to go back to other things and I'm about to lose my internet connection for a while. So I'm not sure when I'll be able to finish this and submit patches...
Just for reference, here's my list of 'make test' failures. I'm not saying they are all worthy of investigation, but at least if you're getting these errors too, then you know you're not alone...
../../../tools/runtest -q -P wine -M advpack.dll -T ../../.. -p advpack_test.exe.so files.c && touch files.ok files.c:178: Test failed: Expected ini file to not be hidden files.c:179: Test failed: Expected ini contents to not match files.c:180: Test failed: Expected path to not exist files.c:186: Test failed: Expected ini file to be hidden files.c:188: Test failed: Expected path to exist
../../../tools/runtest -q -P wine -M d3d8.dll -T ../../.. -p d3d8_test.exe.so visual.c && touch visual.ok visual.c:316: Test failed: Clear rectangle 3(pos, neg) has color 00ff0000 visual.c:318: Test failed: Clear rectangle 1(pos, pos) has color 00ffffff visual.c:508: Test failed: Present failed: Got color 0x00ffffff, expected 0x00ff0000.
../../../tools/runtest -q -P wine -M ddraw.dll -T ../../.. -p ddraw_test.exe.so visual.c && touch visual.ok visual.c:341: Test failed: Clear rectangle 3(pos, neg) has color 00ff0000 visual.c:343: Test failed: Clear rectangle 1(pos, pos) has color 00ffffff
../../../tools/runtest -q -P wine -M dsound.dll -T ../../.. -p dsound_test.exe.so dsound.c && touch dsound.ok dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x2 WAVE_FORMAT_PCM) failed: E_FAIL dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x16x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x16x2 WAVE_FORMAT_PCM) failed: E_FAIL dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x2 WAVE_FORMAT_PCM) failed: E_FAIL dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x16x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound.c:567: Test failed: IDirectSoundBuffer_SetFormat(96000x16x2 WAVE_FORMAT_PCM) failed: E_FAIL
../../../tools/runtest -q -P wine -M dsound.dll -T ../../.. -p dsound_test.exe.so dsound8.c && touch dsound8.ok dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x2 WAVE_FORMAT_PCM) failed: E_FAIL dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x16x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x16x2 WAVE_FORMAT_PCM) failed: E_FAIL dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x 8x2 WAVE_FORMAT_PCM) failed: E_FAIL dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x16x1 WAVE_FORMAT_PCM) failed: E_FAIL dsound8.c:600: Test failed: IDirectSoundBuffer_SetFormat(96000x16x2 WAVE_FORMAT_PCM) failed: E_FAIL
../../../tools/runtest -q -P wine -M gdi32.dll -T ../../.. -p gdi32_test.exe.so font.c && touch font.ok I've hacked this one too much to report the results.
../../../tools/runtest -q -P wine -M user32.dll -T ../../.. -p user32_test.exe.so msg.c && touch msg.ok msg.c:8995: Test failed: 13: ShowWindow(SW_SHOWNOACTIVATE): in msg 0x0047 expecting wParam 0x8070 got 0x9072 msg.c:8995: Test failed: 13: ShowWindow(SW_SHOWNOACTIVATE): the msg 0x0003 was expected, but got msg 0x0005 instead msg.c:8995: Test failed: 13: ShowWindow(SW_SHOWNOACTIVATE): the msg sequence is not complete: expected 0005 - actual 0000 msg.c:4934: Test failed: InvalidateErase: in msg 0x0085 expecting wParam 0x1 got 0x266c msg.c:4947: Test failed: InvalidateErase: in msg 0x0085 expecting wParam 0x1 got 0x26e4