update for HEAD-2003091401
[reactos.git] / drivers / fs / vfat / misc.c
index ec26c9d..36b2f72 100644 (file)
 
 static LONG QueueCount = 0;
 
+NTSTATUS VfatLockControl(
+   IN PVFAT_IRP_CONTEXT IrpContext
+   )
+{
+   PVFATFCB Fcb;
+   NTSTATUS Status;
+
+   DPRINT("VfatLockControl(IrpContext %x)\n", IrpContext);
+   assert(IrpContext);
+
+   Fcb = (PVFATFCB)IrpContext->FileObject->FsContext;
+
+   if (IrpContext->DeviceObject == VfatGlobalData->DeviceObject)
+   {
+      Status = STATUS_INVALID_DEVICE_REQUEST;
+      goto Fail;
+   }
+
+   if (Fcb->entry.Attrib & FILE_ATTRIBUTE_DIRECTORY)
+   {
+      Status = STATUS_INVALID_PARAMETER;
+      goto Fail;
+   }
+
+   Status = FsRtlProcessFileLock(&Fcb->FileLock,
+                                 IrpContext->Irp,
+                                 NULL
+                                 );
+
+   VfatFreeIrpContext(IrpContext);
+   return Status;
+
+Fail:;
+   IrpContext->Irp->IoStatus.Status = Status;
+   IofCompleteRequest(IrpContext->Irp, (CCHAR)(NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT));
+   VfatFreeIrpContext(IrpContext);
+   return Status;
+}
+
 NTSTATUS VfatDispatchRequest (
         IN PVFAT_IRP_CONTEXT IrpContext)
 {
@@ -66,46 +106,6 @@ NTSTATUS VfatDispatchRequest (
    }
 }
 
-NTSTATUS VfatLockControl(
-   IN PVFAT_IRP_CONTEXT IrpContext
-   )
-{
-   PVFATFCB Fcb;
-   NTSTATUS Status;
-
-   DPRINT("VfatLockControl(IrpContext %x)\n", IrpContext);
-   assert(IrpContext);
-
-   Fcb = (PVFATFCB)IrpContext->FileObject->FsContext;
-
-   if (IrpContext->DeviceObject == VfatGlobalData->DeviceObject)
-   {
-      Status = STATUS_INVALID_DEVICE_REQUEST;
-      goto Fail;
-   }
-
-   if (Fcb->entry.Attrib & FILE_ATTRIBUTE_DIRECTORY)
-   {
-      Status = STATUS_INVALID_PARAMETER;
-      goto Fail;
-   }
-
-   Status = FsRtlProcessFileLock(&Fcb->FileLock,
-                                 IrpContext->Irp,
-                                 NULL
-                                 );
-
-   VfatFreeIrpContext(IrpContext);
-   return Status;
-
-Fail:;
-   IrpContext->Irp->IoStatus.Status = Status;
-   IofCompleteRequest(IrpContext->Irp, NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT);
-   VfatFreeIrpContext(IrpContext);
-   return Status;
-}
-
 NTSTATUS STDCALL VfatBuildRequest (
         IN PDEVICE_OBJECT DeviceObject,
         IN PIRP Irp)
@@ -152,7 +152,7 @@ VOID VfatFreeIrpContext (PVFAT_IRP_CONTEXT IrpContext)
 PVFAT_IRP_CONTEXT VfatAllocateIrpContext(PDEVICE_OBJECT DeviceObject, PIRP Irp)
 {
    PVFAT_IRP_CONTEXT IrpContext;
-   PIO_STACK_LOCATION Stack;
+   /*PIO_STACK_LOCATION Stack;*/
    UCHAR MajorFunction;
    DPRINT ("VfatAllocateIrpContext(DeviceObject %x, Irp %x)\n", DeviceObject, Irp);