mirror of
https://github.com/reactos/reactos.git
synced 2024-09-03 17:19:20 +00:00
- Don't check Status so we don't quit looping after the first unsuccessful IRP
svn path=/branches/aicom-network-fixes/; revision=35152
This commit is contained in:
parent
8856c4a5a2
commit
5345dbe2ae
|
@ -168,11 +168,8 @@ static NTSTATUS ReceiveActivity( PAFD_FCB FCB, PIRP Irp ) {
|
|||
FCB, FCB->Recv.Content));
|
||||
/*OskitDumpBuffer( FCB->Recv.Window, FCB->Recv.Content );*/
|
||||
|
||||
Status = STATUS_SUCCESS;
|
||||
|
||||
/* Try to clear some requests */
|
||||
while( !IsListEmpty( &FCB->PendingIrpList[FUNCTION_RECV] ) &&
|
||||
NT_SUCCESS(Status) ) {
|
||||
while( !IsListEmpty( &FCB->PendingIrpList[FUNCTION_RECV] ) ) {
|
||||
NextIrpEntry =
|
||||
RemoveHeadList(&FCB->PendingIrpList[FUNCTION_RECV]);
|
||||
NextIrp =
|
||||
|
@ -476,10 +473,14 @@ PacketSocketRecvComplete(
|
|||
InsertTailList( &FCB->DatagramList, &DatagramRecv->ListEntry );
|
||||
} else Status = STATUS_NO_MEMORY;
|
||||
|
||||
if( !NT_SUCCESS( Status ) ) {
|
||||
SocketStateUnlock( FCB );
|
||||
return Status;
|
||||
}
|
||||
|
||||
/* Satisfy as many requests as we can */
|
||||
|
||||
while( NT_SUCCESS(Status) &&
|
||||
!IsListEmpty( &FCB->DatagramList ) &&
|
||||
while( !IsListEmpty( &FCB->DatagramList ) &&
|
||||
!IsListEmpty( &FCB->PendingIrpList[FUNCTION_RECV] ) ) {
|
||||
AFD_DbgPrint(MID_TRACE,("Looping trying to satisfy request\n"));
|
||||
ListEntry = RemoveHeadList( &FCB->DatagramList );
|
||||
|
|
|
@ -85,8 +85,7 @@ static NTSTATUS NTAPI SendComplete
|
|||
FCB->Send.BytesUsed -= Irp->IoStatus.Information;
|
||||
|
||||
if( !FCB->Send.BytesUsed &&
|
||||
!IsListEmpty( &FCB->PendingIrpList[FUNCTION_SEND] ) &&
|
||||
NT_SUCCESS(Status) ) {
|
||||
!IsListEmpty( &FCB->PendingIrpList[FUNCTION_SEND] ) ) {
|
||||
NextIrpEntry =
|
||||
RemoveHeadList(&FCB->PendingIrpList[FUNCTION_SEND]);
|
||||
NextIrp =
|
||||
|
|
Loading…
Reference in a new issue