Author: tthompson Date: Fri Jul 8 12:05:19 2016 New Revision: 71858 URL: http://svn.reactos.org/svn/reactos?rev=71858&view=rev Log: [NTFS] Fix broken check for free disk space in NtfsAllocateClusters().
Modified: branches/GSoC_2016/NTFS/drivers/filesystems/ntfs/volinfo.c Modified: branches/GSoC_2016/NTFS/drivers/filesystems/ntfs/volinfo.c URL: http://svn.reactos.org/svn/reactos/branches/GSoC_2016/NTFS/drivers/filesystems/ntfs/volinfo.c?rev=71858&r1=71857&r2=71858&view=diff ============================================================================== --- branches/GSoC_2016/NTFS/drivers/filesystems/ntfs/volinfo.c [iso-8859-1] (original) +++ branches/GSoC_2016/NTFS/drivers/filesystems/ntfs/volinfo.c [iso-8859-1] Fri Jul 8 12:05:19 2016 @@ -162,8 +162,14 @@ RtlInitializeBitMap(&Bitmap, (PULONG)BitmapData, DeviceExt->NtfsInfo.ClusterCount); FreeClusters = RtlNumberOfClearBits(&Bitmap); - if( FreeClusters < DesiredClusters ) - Status = STATUS_DISK_FULL; + if (FreeClusters < DesiredClusters) + { + ReleaseAttributeContext(DataContext); + + ExFreePoolWithTag(BitmapData, TAG_NTFS); + ExFreePoolWithTag(BitmapRecord, TAG_NTFS); + return STATUS_DISK_FULL; + } // TODO: Observe MFT reservation zone