-/* $Id: rw.c,v 1.9 2000/11/23 15:53:37 jean Exp $
+/* $Id: rw.c,v 1.10 2000/12/01 12:41:08 jean Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
TempLength);
/* Write the cluster back */
+ Length2 -= TempLength;
if (FirstCluster==1)
{
VFATWriteSectors(DeviceExt->StorageDevice,
else
{
VFATWriteCluster(DeviceExt,Temp,CurrentCluster);
- CurrentCluster = GetNextWriteCluster(DeviceExt, CurrentCluster);
+ if (Length2 >0)
+ CurrentCluster = GetNextWriteCluster(DeviceExt, CurrentCluster);
}
- Length2 -= TempLength;
Buffer = Buffer + TempLength;
}
CHECKPOINT;
ExFreePool(Temp);
return(STATUS_UNSUCCESSFUL);
}
+ Length2 -= DeviceExt->BytesPerCluster;
if (FirstCluster==1)
{
VFATWriteSectors(DeviceExt->StorageDevice,
else
{
VFATWriteCluster(DeviceExt,Buffer,CurrentCluster);
- CurrentCluster = GetNextWriteCluster(DeviceExt, CurrentCluster);
+ if (Length2 >0)
+ CurrentCluster = GetNextWriteCluster(DeviceExt, CurrentCluster);
}
Buffer = Buffer + DeviceExt->BytesPerCluster;
- Length2 -= DeviceExt->BytesPerCluster;
}
CHECKPOINT;