ntoskrnl.exe: Add support for async close processing.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Sebastian Lackner 2016-10-13 00:46:34 +02:00 committed by Alexandre Julliard
parent 45b651e213
commit e20259bb6e
1 changed files with 6 additions and 1 deletions

View File

@ -196,6 +196,12 @@ static NTSTATUS WINAPI dispatch_irp_completion( DEVICE_OBJECT *device, IRP *irp,
} }
SERVER_END_REQ; SERVER_END_REQ;
if (irp->Flags & IRP_CLOSE_OPERATION)
{
HeapFree( GetProcessHeap(), 0, file );
irp->Tail.Overlay.OriginalFileObject = NULL;
}
HeapFree( GetProcessHeap(), 0, irp->UserBuffer ); HeapFree( GetProcessHeap(), 0, irp->UserBuffer );
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
@ -292,7 +298,6 @@ static NTSTATUS dispatch_close( const irp_params_t *params, void *in_buff, ULONG
irp->Flags |= IRP_CLOSE_OPERATION; irp->Flags |= IRP_CLOSE_OPERATION;
dispatch_irp( device, irp, irp_handle ); dispatch_irp( device, irp, irp_handle );
HeapFree( GetProcessHeap(), 0, file ); /* FIXME: async close processing not supported */
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }