https://bugs.winehq.org/show_bug.cgi?id=54742
Bug ID: 54742 Summary: The 64-bit advapi32:registry breaks the 32-bit test_redirection() in Wine Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: advapi32 Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com Distribution: ---
The 64-bit advapi32:registry breaks the 32-bit test_redirection() in Wine. To reproduce run the following commands:
$ rm -rf ~/.wine # start from a fresh wineprefix $ ./wow64/wine64 wow64/dlls/advapi32/tests/x86_64-windows/advapi32_test.exe registry 2>&1 | grep -E '(Test failed|tests executed)' 0020:registry: 6309 tests executed (156 marked as todo, 0 as flaky, 0 failures), 2 skipped. $ ./wow32/wine wow32/dlls/advapi32/tests/i386-windows/advapi32_test.exe registry 2>&1 | grep -E '(Test failed|tests executed)' registry.c:2837: Test failed: RegOpenKeyExA failed: 2 registry.c:2842: Test failed: RegOpenKeyExA failed: 2 registry.c:2861: Test failed: 00000000: wrong value 32/64 registry.c:2863: Test failed: 00000200: wrong value 32/64 registry.c:2868: Test failed: 00000000: wrong value 64/0 registry.c:2869: Test failed: 00000100: wrong value 64/0 registry.c:2870: Test failed: 00000200: wrong value 64/0 registry.c:3168: Test failed: RegOpenKeyExA failed: 2 registry.c:3174: Test failed: RegOpenKeyExA failed: 2 registry.c:3180: Test failed: RegOpenKeyExA failed: 2 registry.c:3206: Test failed: found equals 0 registry.c:3208: Test failed: found equals 0 registry.c:3210: Test failed: found equals 0 registry.c:3212: Test failed: found equals 1 registry.c:3214: Test failed: wrong number of subkeys: 10 registry.c:3216: Test failed: found equals 1 registry.c:3218: Test failed: found equals 0 registry.c:3220: Test failed: wrong number of subkeys: 10 registry.c:3222: Test failed: found equals 0 0128:registry: 7658 tests executed (74 marked as todo, 0 as flaky, 19 failures), 2 skipped.
See https://test.winehq.org/data/patterns.html#advapi32:registry
The reason why this failure is only visible with the fg-deb64-wow32 is because this is the only test configuration that runs the 32-bit tests in the same wineprefix as the 64-bit tests.
What this shows is that advapi32:registry does not correctly cleans up after itself which has the potential for breaking any test that follows (not just 32-bit ones).