[PATCH 03/10] server: Use async object to transfer IRP result to client.

Alexandre Julliard julliard at winehq.org
Mon Nov 28 09:54:16 CST 2016


Jacek Caban <jacek at codeweavers.com> writes:

> diff --git a/server/file.h b/server/file.h
> index c0a53a2..75a2e03 100644
> --- a/server/file.h
> +++ b/server/file.h
> @@ -53,6 +53,8 @@ struct fd_ops
>      void (*reselect_async)( struct fd *, struct async_queue *queue );
>      /* cancel an async operation */
>      int (*cancel_async)(struct fd *, struct process *process, struct thread *thread, client_ptr_t iosb);
> +    /* find an async operation in queues */
> +    struct async *(*find_async)( struct fd *fd, struct process *process, client_ptr_t client_async );
>  };

I think a per-process list of async/iosb would make more sense. There
should be nothing file type specific about finding an async. It could
probably be used to get rid of cancel_async() too.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list