wineserver: call remove_process_locks when a process ends, fix declarations

Mike McCormack mike at codeweavers.com
Mon Jun 13 23:16:23 CDT 2005


remove_process_locks() is currently not used anywhere in the wineserver 
code.  Persumably it should be called when a process ends to clear any 
locks that process holds.

Mike


ChangeLog:
* call remove_process_locks when a process ends, fix declarations
-------------- next part --------------
Index: server/file.h
===================================================================
RCS file: /home/wine/wine/server/file.h,v
retrieving revision 1.22
diff -u -p -r1.22 file.h
--- server/file.h	7 Jun 2005 20:09:01 -0000	1.22
+++ server/file.h	14 Jun 2005 04:14:33 -0000
@@ -59,7 +59,6 @@ extern int check_fd_events( struct fd *f
 extern void set_fd_events( struct fd *fd, int events );
 extern obj_handle_t lock_fd( struct fd *fd, file_pos_t offset, file_pos_t count, int shared, int wait );
 extern void unlock_fd( struct fd *fd, file_pos_t offset, file_pos_t count );
-extern int flush_cached_fd( struct process *process, obj_handle_t handle );
 
 extern int default_fd_add_queue( struct object *obj, struct wait_queue_entry *entry );
 extern void default_fd_remove_queue( struct object *obj, struct wait_queue_entry *entry );
@@ -73,6 +72,7 @@ extern int no_get_file_info( struct fd *
 extern void no_queue_async( struct fd *fd, void* apc, void* user, void* io_sb, int type, int count);
 extern void no_cancel_async( struct fd *fd );
 extern void main_loop(void);
+extern void remove_process_locks( struct process *process );
 
 inline static struct fd *get_obj_fd( struct object *obj ) { return obj->ops->get_fd( obj ); }
 
Index: server/handle.h
===================================================================
RCS file: /home/wine/wine/server/handle.h,v
retrieving revision 1.14
diff -u -p -r1.14 handle.h
--- server/handle.h	24 Apr 2005 17:35:52 -0000	1.14
+++ server/handle.h	14 Jun 2005 04:14:33 -0000
@@ -49,6 +49,7 @@ extern obj_handle_t find_inherited_handl
 extern struct handle_table *alloc_handle_table( struct process *process, int count );
 extern struct handle_table *copy_handle_table( struct process *process, struct process *parent );
 extern unsigned int get_handle_table_count( struct process *process);
+extern int flush_cached_fd( struct process *process, obj_handle_t handle );
 
 extern void close_global_handles(void);
 
Index: server/process.c
===================================================================
RCS file: /home/wine/wine/server/process.c,v
retrieving revision 1.131
diff -u -p -r1.131 process.c
--- server/process.c	9 Jun 2005 15:39:52 -0000	1.131
+++ server/process.c	14 Jun 2005 04:14:34 -0000
@@ -424,6 +424,7 @@ static void process_destroy( struct obje
     assert( list_empty( &process->thread_list ));
 
     set_process_startup_state( process, STARTUP_ABORTED );
+    remove_process_locks( process );
     if (process->console) release_object( process->console );
     if (process->parent) release_object( process->parent );
     if (process->msg_fd) release_object( process->msg_fd );


More information about the wine-patches mailing list