From 17e3b9738957cf0b4cbefdcf9c8cbec0dac4e7f8 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Tue, 23 Mar 1999 17:04:10 +0000 Subject: [PATCH] Create startup info for the initial process. --- server/process.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/server/process.c b/server/process.c index fe08b4d81b..4ef7229b57 100644 --- a/server/process.c +++ b/server/process.c @@ -111,8 +111,21 @@ static void init_process( struct process *process ) /* create the initial process */ struct process *create_initial_process(void) { + struct new_process_request *info; + copy_handle_table( &initial_process, NULL ); init_process( &initial_process ); + + if (!alloc_console( &initial_process )) return NULL; + if (!(info = mem_alloc( sizeof(*info) ))) return NULL; + info->start_flags = STARTF_USESTDHANDLES; + info->hstdin = alloc_handle( &initial_process, initial_process.console_in, + GENERIC_READ | GENERIC_WRITE | SYNCHRONIZE, 1 ); + info->hstdout = alloc_handle( &initial_process, initial_process.console_out, + GENERIC_READ | GENERIC_WRITE | SYNCHRONIZE, 1 ); + info->hstderr = alloc_handle( &initial_process, initial_process.console_out, + GENERIC_READ | GENERIC_WRITE | SYNCHRONIZE, 1 ); + initial_process.info = info; grab_object( &initial_process ); /* so that we never free it */ return &initial_process; -- 2.32.0.93.g670b81a890