http://bugs.winehq.org/show_bug.cgi?id=28220
Summary: kernel32/process.ok: test fails when redirected Product: Wine Version: 1.3.27 Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: kernel32 AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
It's not uncommon to want to do make test > log 2>&1 but if you do this, kernel32/process.ok will fail with
../../../tools/runtest -q -P wine -M kernel32.dll -T ../../.. -p kernel32_test.exe.so process.c && touch process.ok wine: cannot find L"C:\windows\system32\doesnotexist.exe" wine: cannot find L"C:\windows\system32\does.exe" process.c:1344: Test failed: Opening ConOut process.c:1347: Test failed: Getting sb info process.c:1348: Test failed: Getting console modes
http://bugs.winehq.org/show_bug.cgi?id=28220
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, testcase CC| |austinenglish@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=28220
--- Comment #1 from Austin English austinenglish@gmail.com 2012-04-02 00:03:47 CDT --- Created attachment 39645 --> http://bugs.winehq.org/attachment.cgi?id=39645 skip tests if ConIn/ConOut aren't available
This works for me, though I haven't yet tested to see what windows does if stdout is redirected.
https://bugs.winehq.org/show_bug.cgi?id=28220
--- Comment #2 from Austin English austinenglish@gmail.com --- Also causes some valgrind warnings: ==24079== Syscall param write(buf) points to uninitialised byte(s) ==24079== at 0x4226CF3: __write_nocancel (syscall-template.S:81) ==24079== by 0x7BC7FD72: send_request (server.c:198) ==24079== by 0x7BC7FF91: wine_server_call (server.c:294) ==24079== by 0x7B82E089: wine_server_call_err (server.h:61) ==24079== by 0x7B83376C: SetConsoleMode (console.c:2234) ==24079== by 0x4E0153E: doChild (process.c:391) ==24079== by 0x4E0ED2F: func_process (process.c:2074) ==24079== by 0x4E48B19: run_test (test.h:584) ==24079== by 0x4E48F08: main (test.h:654) ==24079== Address 0x522f38c is on thread 1's stack ==24079== Uninitialised value was created by a stack allocation ==24079== at 0x4E00BFC: doChild (process.c:253) ==24079==
==22121== Syscall param write(buf) points to uninitialised byte(s) ==22121== at 0x4226CF3: __write_nocancel (syscall-template.S:81) ==22121== by 0x7BC7FD72: send_request (server.c:198) ==22121== by 0x7BC7FF91: wine_server_call (server.c:294) ==22121== by 0x7B82E089: wine_server_call_err (server.h:61) ==22121== by 0x7B83376C: SetConsoleMode (console.c:2234) ==22121== by 0x4D59720: test_Console (process.c:1361) ==22121== by 0x4D5ED59: func_process (process.c:2084) ==22121== by 0x4D98B19: run_test (test.h:584) ==22121== by 0x4D98F08: main (test.h:654) ==22121== Address 0x517f91c is on thread 1's stack ==22121== Uninitialised value was created by a stack allocation ==22121== at 0x4D59204: test_Console (process.c:1300) ==22121==
https://bugs.winehq.org/show_bug.cgi?id=28220
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source, valgrind
https://bugs.winehq.org/show_bug.cgi?id=28220
--- Comment #3 from Vincent Povirk madewokherd@gmail.com --- The tests succeed on Windows when redirected. That means it's a Wine bug, not a test bug.
Apparently, calling CreateProcess with DETACHED_PROCESS should prevent the child from inheriting std handles, regardless of whether they belong to a console. On Wine, this only happens for console handles.
https://bugs.winehq.org/show_bug.cgi?id=28220
--- Comment #4 from Austin English austinenglish@gmail.com --- Still in 4.0-rc3.
https://bugs.winehq.org/show_bug.cgi?id=28220
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED CC| |fgouget@codeweavers.com Status|NEW |RESOLVED
--- Comment #5 from François Gouget fgouget@codeweavers.com --- As far as I can tell this is fixed. None of the commands below failed for me:
./tools/runtest -P wine -M kernel32.dll -T . -p dlls/kernel32/tests/kernel32_test.exe process >log 2>&1
./tools/runtest -P wine -M kernel32.dll -T . -p dlls/kernel32/tests/kernel32_test.exe process >log 2>&1 </dev/null
./wine dlls/kernel32/tests/kernel32_test.exe process >log 2>&1
./wine dlls/kernel32/tests/kernel32_test.exe process >log 2>&1 </dev/null
Also I see no trace of this bug except for Apr 12-21. So I am closing this bug.
https://bugs.winehq.org/show_bug.cgi?id=28220
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 7.9.