Module: wine Branch: master Commit: 23e7b859a11cfe715ffc1ef899149a026870f482 URL: https://source.winehq.org/git/wine.git/?a=commit;h=23e7b859a11cfe715ffc1ef89...
Author: Jacek Caban jacek@codeweavers.com Date: Mon Nov 30 18:42:02 2020 +0100
server: Remove no longer needed free_console.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
server/console.c | 30 +++++++----------------------- server/process.c | 4 +--- server/process.h | 1 - 3 files changed, 8 insertions(+), 27 deletions(-)
diff --git a/server/console.c b/server/console.c index 295db7767b2..0e779c77816 100644 --- a/server/console.c +++ b/server/console.c @@ -55,7 +55,6 @@ struct console { struct object obj; /* object header */ int signaled; /* is console signaled */ - int num_proc; /* number of processes attached to this console */ struct thread *renderer; /* console renderer thread */ struct screen_buffer *active; /* active screen buffer */ struct console_server *server; /* console server object */ @@ -513,7 +512,6 @@ static struct object *create_console(void)
console->renderer = NULL; console->signaled = 0; - console->num_proc = 0; console->active = NULL; console->server = NULL; console->fd = NULL; @@ -635,20 +633,6 @@ static struct object *create_screen_buffer( struct console *console ) return &screen_buffer->obj; }
-/* free the console for this process */ -int free_console( struct process *process ) -{ - struct console *console = process->console; - - if (!console) return 0; - - process->console = NULL; - console->num_proc--; - release_object( console ); - - return 1; -} - struct thread *console_get_renderer( struct console *console ) { return console->renderer; @@ -755,10 +739,7 @@ static struct object *create_console_connection( struct console *console ) }
if (console) - { current->process->console = (struct console *)grab_object( console ); - console->num_proc++; - }
return &connection->obj; } @@ -1072,10 +1053,7 @@ static int console_connection_ioctl( struct fd *fd, ioctl_code_t code, struct as if (!(process = get_process_from_id( pid ))) return 0;
if (process->console) - { current->process->console = (struct console *)grab_object( process->console ); - process->console->num_proc++; - } else set_error( STATUS_ACCESS_DENIED ); release_object( process ); return !get_error(); @@ -1200,7 +1178,13 @@ static struct object *console_connection_open_file( struct object *obj, unsigned
static int console_connection_close_handle( struct object *obj, struct process *process, obj_handle_t handle ) { - free_console( process ); + struct console *console = process->console; + + if (console) + { + process->console = NULL; + release_object( console ); + } return 1; }
diff --git a/server/process.c b/server/process.c index 5b3e29e5dfd..4a366b4d3b0 100644 --- a/server/process.c +++ b/server/process.c @@ -915,9 +915,7 @@ static void process_killed( struct process *process ) if (process->exe_file) release_object( process->exe_file ); process->idle_event = NULL; process->exe_file = NULL; - - /* close the console attached to this process, if any */ - free_console( process ); + assert( !process->console );
while ((ptr = list_head( &process->rawinput_devices ))) { diff --git a/server/process.h b/server/process.h index b4f3660d89a..374eda65b6b 100644 --- a/server/process.h +++ b/server/process.h @@ -132,7 +132,6 @@ extern void detach_debugged_processes( struct thread *debugger ); extern void enum_processes( int (*cb)(struct process*, void*), void *user);
/* console functions */ -extern int free_console( struct process *process ); extern struct thread *console_get_renderer( struct console *console );
/* process tracing mechanism to use */