https://bugs.winehq.org/show_bug.cgi?id=52048
Bug ID: 52048 Summary: CreateProcess() might not spawn console for new process Product: Wine Version: 6.21 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: kernel32 Assignee: wine-bugs@winehq.org Reporter: colin1207@gmx.net Distribution: ---
Created attachment 71059 --> https://bugs.winehq.org/attachment.cgi?id=71059 demo programs (see description)
When launching a console application by calling CreateProcess() without any process creation flags, wine will not spawn a new console window if the parent process is not currently attached to a console that the child could inherit, unless explicitly requested with the CREATE_NEW_CONSOLE flag.
Windows defaults to the behaviour of allocating a new console for the process, even without explicit request, while wine will not. This might break several applications that assume to have a console attached and will crash, for example, when trying to initialize curses.
Attached is a demo application: Running launcher.exe on windows will successfully open a console for helloworld.exe after the CreateProcess call. All tested wine versions however, will not allocate a new console.
https://bugs.winehq.org/show_bug.cgi?id=52048
Eric Pouech eric.pouech@orange.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |eric.pouech@orange.fr Status|UNCONFIRMED |ASSIGNED Assignee|wine-bugs@winehq.org |eric.pouech@orange.fr Ever confirmed|0 |1
--- Comment #1 from Eric Pouech eric.pouech@orange.fr --- Created attachment 71301 --> https://bugs.winehq.org/attachment.cgi?id=71301 tentative patch
confirming
when calling CreateProcess without console, and child is a CUI program, - if flag DETACHED_PROCESS is set, no console should be created at child startup - if flag DETACHED_PROCESS isn't set, a console should be created at child startup
the trouble here is not to fix that behavior, it's to fix first all cases in Wine source code where the DETACHED_PROCESS flag is missing
also, need more testing for pseudo console inheritance
https://bugs.winehq.org/show_bug.cgi?id=52048
Eric Pouech eric.pouech@orange.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jacek@codeweavers.com
https://bugs.winehq.org/show_bug.cgi?id=52048
Eric Pouech eric.pouech@orange.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|ASSIGNED |RESOLVED Fixed by SHA1| |f034084d49b354811096524d472 | |ae5172ac1cebf
--- Comment #2 from Eric Pouech eric.pouech@orange.fr --- fix for CreateProcess and various changes for handling side effect of the CreateProcess change have been committed commit hash only refers to CreateProcess change
https://bugs.winehq.org/show_bug.cgi?id=52048
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #3 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 7.5.