Commit be070154 authored by Zebediah Figura's avatar Zebediah Figura Committed by Alexandre Julliard

server: Do not call async_terminate() when restarting an already terminated async.

At best this is a no-op. At worst this will emit an extra APC_ASYNC_IO where the termination (e.g. cancellation) should already have emitted one. Signed-off-by: 's avatarZebediah Figura <zfigura@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent e4a2bca4
......@@ -387,13 +387,11 @@ void async_set_result( struct object *obj, unsigned int status, apc_param_t tota
if (status == STATUS_PENDING) /* restart it */
{
status = async->status;
async->status = STATUS_PENDING;
if (status != STATUS_ALERTED) /* it was terminated in the meantime */
async_terminate( async, status );
else
if (async->status == STATUS_ALERTED)
{
async->status = STATUS_PENDING;
async_reselect( async );
}
}
else
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment