mirror of
				https://github.com/winfsp/winfsp.git
				synced 2025-10-30 19:48:38 -05:00 
			
		
		
		
	Revert commit c70089a176
				
					
				
			This commit is contained in:
		| @@ -339,10 +339,6 @@ static NTSTATUS FspFsvolQueryDirectoryCopyCache( | ||||
|             if (0 != *PDestLen) | ||||
|                 FileDesc->DirectoryHasSuchFile = TRUE; | ||||
|             FileDesc->DirInfoCacheHint = (ULONG)((PUINT8)DirInfo - DirInfoBgn); | ||||
|  | ||||
|             if (DirInfoEnd >= (PUINT8)DirInfo + sizeof(DirInfo->Size) && | ||||
|                 sizeof(FSP_FSCTL_DIR_INFO) > DirInfo->Size) | ||||
|                 FileDesc->DirectoryNoMoreFiles = TRUE; | ||||
|         } | ||||
|     } | ||||
|     else if (STATUS_NO_MORE_FILES == Result && !FileDesc->DirectoryHasSuchFile) | ||||
| @@ -365,7 +361,6 @@ static NTSTATUS FspFsvolQueryDirectoryCopyInPlace( | ||||
|     BOOLEAN CaseInsensitive = !FileDesc->CaseSensitive; | ||||
|     PUNICODE_STRING DirectoryPattern = &FileDesc->DirectoryPattern; | ||||
|     UNICODE_STRING DirectoryMarker = FileDesc->DirectoryMarker; | ||||
|     PUINT8 DirInfoEnd = (PUINT8)DirInfo + DirInfoSize; | ||||
|  | ||||
|     ASSERT(DirInfo == DestBuf); | ||||
|     FSP_FSCTL_STATIC_ASSERT( | ||||
| @@ -386,10 +381,6 @@ static NTSTATUS FspFsvolQueryDirectoryCopyInPlace( | ||||
|         { | ||||
|             if (0 != *PDestLen) | ||||
|                 FileDesc->DirectoryHasSuchFile = TRUE; | ||||
|  | ||||
|             if (DirInfoEnd >= (PUINT8)DirInfo + sizeof(DirInfo->Size) && | ||||
|                 sizeof(FSP_FSCTL_DIR_INFO) > DirInfo->Size) | ||||
|                 FileDesc->DirectoryNoMoreFiles = TRUE; | ||||
|         } | ||||
|     } | ||||
|     else if (STATUS_NO_MORE_FILES == Result && !FileDesc->DirectoryHasSuchFile) | ||||
| @@ -538,14 +529,6 @@ static NTSTATUS FspFsvolQueryDirectoryRetry( | ||||
|         return Result; | ||||
|     } | ||||
|  | ||||
|     /* check if the FileDesc has already seen the "End Of Directory" mark */ | ||||
|     if (FileDesc->DirectoryNoMoreFiles) | ||||
|     { | ||||
|         FspFileNodeRelease(FileNode, Full); | ||||
|         return !FileDesc->DirectoryHasSuchFile ? | ||||
|             STATUS_NO_SUCH_FILE : STATUS_NO_MORE_FILES; | ||||
|     } | ||||
|  | ||||
|     /* see if the required information is still in the cache and valid! */ | ||||
|     if (FspFileNodeReferenceDirInfo(FileNode, &DirInfoBuffer, &DirInfoSize)) | ||||
|     { | ||||
|   | ||||
| @@ -1267,7 +1267,7 @@ typedef struct | ||||
|         DidSetMetadata:1, | ||||
|         DidSetFileAttributes:1, DidSetReparsePoint:1, DidSetSecurity:1, | ||||
|         DidSetCreationTime:1, DidSetLastAccessTime:1, DidSetLastWriteTime:1, DidSetChangeTime:1, | ||||
|         DirectoryHasSuchFile:1, DirectoryNoMoreFiles:1; | ||||
|         DirectoryHasSuchFile:1; | ||||
|     UNICODE_STRING DirectoryPattern; | ||||
|     UNICODE_STRING DirectoryMarker; | ||||
|     UINT64 DirInfo; | ||||
|   | ||||
| @@ -2121,7 +2121,6 @@ NTSTATUS FspFileDescResetDirectory(FSP_FILE_DESC *FileDesc, | ||||
|  | ||||
|         FileDesc->DirectoryPattern = DirectoryPattern; | ||||
|         FileDesc->DirectoryHasSuchFile = FALSE; | ||||
|         FileDesc->DirectoryNoMoreFiles = FALSE; | ||||
|  | ||||
|         if (0 != FileDesc->DirectoryMarker.Buffer) | ||||
|         { | ||||
| @@ -2134,7 +2133,6 @@ NTSTATUS FspFileDescResetDirectory(FSP_FILE_DESC *FileDesc, | ||||
|         ASSERT(0 == FileName || 0 == FileName->Length); | ||||
|  | ||||
|         FileDesc->DirectoryHasSuchFile = FALSE; | ||||
|         FileDesc->DirectoryNoMoreFiles = FALSE; | ||||
|  | ||||
|         if (0 != FileDesc->DirectoryMarker.Buffer) | ||||
|         { | ||||
| @@ -2151,7 +2149,6 @@ NTSTATUS FspFileDescResetDirectory(FSP_FILE_DESC *FileDesc, | ||||
|             return Result; | ||||
|  | ||||
|         FileDesc->DirectoryHasSuchFile = FALSE; | ||||
|         FileDesc->DirectoryNoMoreFiles = FALSE; | ||||
|     } | ||||
|  | ||||
|     return STATUS_SUCCESS; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user