[ros-diffs] [cgutman] 38867: - Fix some IRP tracking bugs - Don't change the status of a previously completed IRP (found by memtrack)

cgutman at svn.reactos.org cgutman at svn.reactos.org
Sun Jan 18 05:34:01 CET 2009


Author: cgutman
Date: Sat Jan 17 22:34:00 2009
New Revision: 38867

URL: http://svn.reactos.org/svn/reactos?rev=38867&view=rev
Log:
 - Fix some IRP tracking bugs
 - Don't change the status of a previously completed IRP (found by memtrack)

Modified:
    branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c
    branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c

Modified: branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c
URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c?rev=38867&r1=38866&r2=38867&view=diff
==============================================================================
--- branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c [iso-8859-1] (original)
+++ branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c [iso-8859-1] Sat Jan 17 22:34:00 2009
@@ -106,7 +106,7 @@
 			    Irp->IoStatus.Information));
     TI_DbgPrint(DEBUG_IRP, ("Completing IRP at (0x%X).\n", Irp));
 
-    IoCompleteRequest(Irp, IO_NETWORK_INCREMENT);
+    IRPFinish(Irp, Status);
 
     TI_DbgPrint(DEBUG_IRP, ("Done Completing IRP\n"));
 }
@@ -212,7 +212,7 @@
     }
 
     IoReleaseCancelSpinLock(Irp->CancelIrql);
-    IoCompleteRequest(Irp, IO_NO_INCREMENT);
+    IRPFinish(Irp, STATUS_CANCELLED);
 
     TI_DbgPrint(MAX_TRACE, ("Leaving.\n"));
 }

Modified: branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c
URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c?rev=38867&r1=38866&r2=38867&view=diff
==============================================================================
--- branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c [iso-8859-1] (original)
+++ branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c [iso-8859-1] Sat Jan 17 22:34:00 2009
@@ -473,10 +473,6 @@
 
   if( Complete )
       IRPFinish( Irp, Status );
-  else {
-      Irp->IoStatus.Status = Status;
-      UntrackFL(__FILE__, __LINE__, Irp, IRP_TAG);
-  }
 
   return Status;
 }



More information about the Ros-diffs mailing list