[FASTFAT]

- On rename/move, flush parent directory data from cache instead of purging it.
CORE-12893

svn path=/trunk/; revision=74354
This commit is contained in:
Thomas Faber 2017-04-17 16:54:28 +00:00
parent 4923220ed0
commit 880f06c728

View file

@ -132,7 +132,7 @@ vfatRenameEntry(
Status = vfatUpdateFCB(DeviceExt, pFcb, &DirContext, pFcb->parentFcb); Status = vfatUpdateFCB(DeviceExt, pFcb, &DirContext, pFcb->parentFcb);
if (NT_SUCCESS(Status)) if (NT_SUCCESS(Status))
{ {
CcPurgeCacheSection(&pFcb->parentFcb->SectionObjectPointers, NULL, 0, FALSE); CcFlushCache(&pFcb->parentFcb->SectionObjectPointers, NULL, 0, NULL);
} }
return Status; return Status;
@ -987,7 +987,7 @@ VfatMoveEntry(
} }
OldParent = pFcb->parentFcb; OldParent = pFcb->parentFcb;
CcPurgeCacheSection(&OldParent->SectionObjectPointers, NULL, 0, FALSE); CcFlushCache(&OldParent->SectionObjectPointers, NULL, 0, NULL);
MoveContext.InPlace = (OldParent == ParentFcb); MoveContext.InPlace = (OldParent == ParentFcb);
/* Add our new entry with our cluster */ /* Add our new entry with our cluster */
@ -999,7 +999,7 @@ VfatMoveEntry(
*pFcb->Attributes, *pFcb->Attributes,
&MoveContext); &MoveContext);
CcPurgeCacheSection(&pFcb->parentFcb->SectionObjectPointers, NULL, 0, FALSE); CcFlushCache(&pFcb->parentFcb->SectionObjectPointers, NULL, 0, NULL);
return Status; return Status;
} }