[PATCH v4 3/4] include/condrv.h, server: using negative values for console pseudo handles
Eric Pouech
eric.pouech at gmail.com
Mon Apr 11 08:05:03 CDT 2022
Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
---
include/wine/condrv.h | 6 +++---
server/process.c | 4 ++--
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/include/wine/condrv.h b/include/wine/condrv.h
index 452ce552da1..2d763d0b821 100644
--- a/include/wine/condrv.h
+++ b/include/wine/condrv.h
@@ -188,8 +188,8 @@ struct condrv_ctrl_event
};
/* Wine specific values for console inheritance (params->ConsoleHandle) */
-#define CONSOLE_HANDLE_ALLOC UlongToHandle(1)
-#define CONSOLE_HANDLE_ALLOC_NO_WINDOW UlongToHandle(2)
-#define CONSOLE_HANDLE_SHELL UlongToHandle(3)
+#define CONSOLE_HANDLE_ALLOC LongToHandle(-1)
+#define CONSOLE_HANDLE_ALLOC_NO_WINDOW LongToHandle(-2)
+#define CONSOLE_HANDLE_SHELL LongToHandle(-3)
#endif /* _INC_CONDRV */
diff --git a/server/process.c b/server/process.c
index 65e2aa70de2..d1407204718 100644
--- a/server/process.c
+++ b/server/process.c
@@ -1333,8 +1333,8 @@ DECL_HANDLER(new_process)
/* connect to the window station */
connect_process_winstation( process, parent_thread, parent );
- /* set the process console */
- if (info->data->console > 3)
+ /* inherit the process console, but keep pseudo handles (< 0), and 0 (= not attached to a console) as is */
+ if ((int)info->data->console > 0)
info->data->console = duplicate_handle( parent, info->data->console, process,
0, 0, DUPLICATE_SAME_ACCESS );
More information about the wine-devel
mailing list