if( InFlightRequest[i]->InFlightRequest ) {
AFD_DbgPrint(MID_TRACE,("Cancelling in flight irp %d (%x)\n",
i, InFlightRequest[i]->InFlightRequest));
+ IoCancelIrp(InFlightRequest[i]->InFlightRequest);
InFlightRequest[i]->InFlightRequest = NULL;
}
}
NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n"));
- NdisWorkItem = ExAllocatePool(NonPagedPool, sizeof(PNDIS_WORK_ITEM));
+ NdisWorkItem = ExAllocatePool(NonPagedPool, sizeof(NDIS_WORK_ITEM));
WorkItem = (PWORK_QUEUE_ITEM)NdisWorkItem->WrapperReserved;
if( !ChewCreate( &WorkItem, sizeof(DISCONNECT_TYPE),
DispDoDisconnect, &DisType ) )
ASSERT(0);
+
+ IoReleaseCancelSpinLock(Irp->CancelIrql);
return;
case TDI_SEND_DATAGRAM:
if (FileObject->FsContext2 != (PVOID)TDI_TRANSPORT_ADDRESS_FILE) {
TI_DbgPrint(MIN_TRACE, ("TDI_SEND_DATAGRAM, but no address file.\n"));
+ break;
}
break;
case TDI_RECEIVE_DATAGRAM:
if (FileObject->FsContext2 != (PVOID)TDI_TRANSPORT_ADDRESS_FILE) {
TI_DbgPrint(MIN_TRACE, ("TDI_RECEIVE_DATAGRAM, but no address file.\n"));
+ break;
}
DGRemoveIRP(TranContext->Handle.AddressHandle, Irp);