Module: wine Branch: master Commit: c7e87b536edb28bb48162690e0d42c9ba9ccb43c URL: https://source.winehq.org/git/wine.git/?a=commit;h=c7e87b536edb28bb48162690e...
Author: Eric Pouech eric.pouech@gmail.com Date: Thu Mar 17 08:27:22 2022 +0100
start: Force no console creation when using start /exec.
Signed-off-by: Eric Pouech eric.pouech@gmail.com Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
programs/start/start.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/programs/start/start.c b/programs/start/start.c index 998c439423e..7252d54e046 100644 --- a/programs/start/start.c +++ b/programs/start/start.c @@ -516,8 +516,11 @@ int __cdecl wmain (int argc, WCHAR *argv[]) break; } else if (is_option(argv[i], L"/exec")) { - creation_flags = 0; - sei.fMask = SEE_MASK_NOCLOSEPROCESS | SEE_MASK_NO_CONSOLE | SEE_MASK_FLAG_NO_UI; + /* If start.exe isn't attached to a console, force that no console would be created. + * This is needed when target process belongs to CUI subsystem. + */ + creation_flags = GetConsoleCP() == 0 ? DETACHED_PROCESS : 0; + sei.fMask = SEE_MASK_NOCLOSEPROCESS | SEE_MASK_NO_CONSOLE | SEE_MASK_FLAG_NO_UI; i++; break; }