mirror of
https://github.com/reactos/reactos.git
synced 2024-07-12 07:35:10 +00:00
[FASTFAT]
- Update FCB hashes after changing the path name CORE-11377 svn path=/trunk/; revision=72147
This commit is contained in:
parent
85915846eb
commit
1d2d985d11
|
@ -347,6 +347,7 @@ vfatAddFCBToTable(
|
||||||
ULONG Index;
|
ULONG Index;
|
||||||
ULONG ShortIndex;
|
ULONG ShortIndex;
|
||||||
|
|
||||||
|
ASSERT(pFCB->Hash.Hash == vfatNameHash(0, &pFCB->PathNameU));
|
||||||
Index = pFCB->Hash.Hash % pVCB->HashTableSize;
|
Index = pFCB->Hash.Hash % pVCB->HashTableSize;
|
||||||
ShortIndex = pFCB->ShortHash.Hash % pVCB->HashTableSize;
|
ShortIndex = pFCB->ShortHash.Hash % pVCB->HashTableSize;
|
||||||
|
|
||||||
|
@ -376,6 +377,7 @@ vfatInitFCBFromDirEntry(
|
||||||
|
|
||||||
RtlCopyMemory(&Fcb->entry, &DirContext->DirEntry, sizeof (DIR_ENTRY));
|
RtlCopyMemory(&Fcb->entry, &DirContext->DirEntry, sizeof (DIR_ENTRY));
|
||||||
RtlCopyUnicodeString(&Fcb->ShortNameU, &DirContext->ShortNameU);
|
RtlCopyUnicodeString(&Fcb->ShortNameU, &DirContext->ShortNameU);
|
||||||
|
Fcb->Hash.Hash = vfatNameHash(0, &Fcb->PathNameU);
|
||||||
if (Vcb->Flags & VCB_IS_FATX)
|
if (Vcb->Flags & VCB_IS_FATX)
|
||||||
{
|
{
|
||||||
Fcb->ShortHash.Hash = Fcb->Hash.Hash;
|
Fcb->ShortHash.Hash = Fcb->Hash.Hash;
|
||||||
|
@ -457,7 +459,7 @@ vfatSetFCBNewDirName(
|
||||||
Fcb->PathNameBuffer = Fcb->PathNameU.Buffer;
|
Fcb->PathNameBuffer = Fcb->PathNameU.Buffer;
|
||||||
Fcb->DirNameU.Buffer = Fcb->PathNameU.Buffer;
|
Fcb->DirNameU.Buffer = Fcb->PathNameU.Buffer;
|
||||||
vfatSplitPathName(&Fcb->PathNameU, &Fcb->DirNameU, &Fcb->LongNameU);
|
vfatSplitPathName(&Fcb->PathNameU, &Fcb->DirNameU, &Fcb->LongNameU);
|
||||||
|
Fcb->Hash.Hash = vfatNameHash(0, &Fcb->PathNameU);
|
||||||
if (pVCB->Flags & VCB_IS_FATX)
|
if (pVCB->Flags & VCB_IS_FATX)
|
||||||
{
|
{
|
||||||
Fcb->ShortHash.Hash = Fcb->Hash.Hash;
|
Fcb->ShortHash.Hash = Fcb->Hash.Hash;
|
||||||
|
|
Loading…
Reference in a new issue