Zebediah Figura : server: Allow calling async_terminate() with STATUS_PENDING.
Alexandre Julliard
julliard at winehq.org
Thu Sep 2 15:45:29 CDT 2021
Module: wine
Branch: master
Commit: 0f332fc0393e5d89b0fb676c06890085fb5fae18
URL: https://source.winehq.org/git/wine.git/?a=commit;h=0f332fc0393e5d89b0fb676c06890085fb5fae18
Author: Zebediah Figura <zfigura at codeweavers.com>
Date: Wed Sep 1 17:28:35 2021 -0500
server: Allow calling async_terminate() with STATUS_PENDING.
We still don't quite handle this completely correctly, but we should at least
avoid crashing the server due to a failed assertion.
Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
server/async.c | 2 --
server/device.c | 1 -
2 files changed, 3 deletions(-)
diff --git a/server/async.c b/server/async.c
index 1c3082083ed..b414604fcd4 100644
--- a/server/async.c
+++ b/server/async.c
@@ -156,8 +156,6 @@ static void async_destroy( struct object *obj )
/* notifies client thread of new status of its async request */
void async_terminate( struct async *async, unsigned int status )
{
- assert( status != STATUS_PENDING );
-
if (async->terminated) return;
async->terminated = 1;
diff --git a/server/device.c b/server/device.c
index b669921a003..ef93a0a9024 100644
--- a/server/device.c
+++ b/server/device.c
@@ -386,7 +386,6 @@ static void set_irp_result( struct irp_call *irp, unsigned int status,
if (!file) return; /* already finished */
- /* FIXME: handle the STATUS_PENDING case */
iosb->status = status;
iosb->result = result;
iosb->out_size = min( iosb->out_size, out_size );
More information about the wine-cvs
mailing list