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@codeweavers.com --- 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 );