Module: wine Branch: master Commit: 8364351b9917e699c1654bab6eec98c2aec5bf41 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8364351b9917e699c1654bab6e...
Author: Alexandre Julliard julliard@winehq.org Date: Sat Mar 7 14:26:51 2015 +0900
server: Don't report completion at all in the MORE_PROCESSING_REQUIRED case.
---
server/async.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/server/async.c b/server/async.c index e403955..a8f3b05 100644 --- a/server/async.c +++ b/server/async.c @@ -243,9 +243,6 @@ void async_set_timeout( struct async *async, timeout_t timeout, unsigned int sta static void add_async_completion( struct async_queue *queue, apc_param_t cvalue, unsigned int status, apc_param_t information ) { - if (status == STATUS_MORE_PROCESSING_REQUIRED) - return; /* The async callback has successfully finished but no completion should be reported */ - if (queue->fd) { apc_param_t ckey; @@ -287,6 +284,8 @@ void async_set_result( struct object *obj, unsigned int status, apc_param_t tota if (async->timeout) remove_timeout_user( async->timeout ); async->timeout = NULL; async->status = status; + if (status == STATUS_MORE_PROCESSING_REQUIRED) return; /* don't report the completion */ + if (async->data.cvalue) add_async_completion( async->queue, async->data.cvalue, status, total ); if (apc) {