Index: create.c =================================================================== --- drivers/filesystems/fastfat/create.c (revision 69810) +++ drivers/filesystems/fastfat/create.c (working copy) @@ -649,6 +649,7 @@ { pFcb = FileObject->FsContext; ASSERT(pFcb == ParentFcb); + ASSERT((*pFcb->Attributes & _A_VOLID) == 0); if (pFcb->OpenHandleCount == 0) { @@ -859,6 +860,7 @@ { *pFcb->Attributes = Stack->Parameters.Create.FileAttributes & ~FILE_ATTRIBUTE_NORMAL; *pFcb->Attributes |= FILE_ATTRIBUTE_ARCHIVE; + ASSERT((*pFcb->Attributes & _A_VOLID) == 0); VfatUpdateEntry(pFcb); } @@ -919,6 +921,7 @@ pFcb->OpenHandleCount++; DeviceExt->OpenHandleCount++; + ASSERT((*pFcb->Attributes & _A_VOLID) == 0); /* FIXME : test write access if requested */ Index: dir.c =================================================================== --- drivers/filesystems/fastfat/dir.c (revision 69810) +++ drivers/filesystems/fastfat/dir.c (working copy) @@ -525,6 +525,7 @@ FirstCall = FALSE; if (NT_SUCCESS(Status)) { + ASSERT(!ENTRY_VOLUME(IrpContext->DeviceExt, &DirContext.DirEntry)); switch (FileInformationClass) { case FileNameInformation: Index: dirwr.c =================================================================== --- drivers/filesystems/fastfat/dirwr.c (revision 69810) +++ drivers/filesystems/fastfat/dirwr.c (working copy) @@ -342,6 +342,7 @@ { break; } + ASSERT(!ENTRY_VOLUME(DeviceExt, &DirContext.DirEntry)); } if (i == 100) /* FIXME : what to do after this ? */ { @@ -768,6 +769,7 @@ IN UCHAR ReqAttr, IN PVFAT_MOVE_CONTEXT MoveContext) { + ASSERT((ReqAttr & _A_VOLID) == 0); if (DeviceExt->Flags & VCB_IS_FATX) return FATXAddEntry(DeviceExt, NameU, Fcb, ParentFcb, RequestedOptions, ReqAttr, MoveContext); else