mirror of
				https://github.com/winfsp/winfsp.git
				synced 2025-10-30 19:48:38 -05:00 
			
		
		
		
	sys: IRP_MJ_DIRECTORY_CONTROL: testing
This commit is contained in:
		| @@ -137,11 +137,10 @@ static NTSTATUS FspFsvolQueryDirectoryCopy( | |||||||
|  |  | ||||||
|     try |     try | ||||||
|     { |     { | ||||||
|         for (;;) |         for (; | ||||||
|  |             (PUINT8)DirInfo + sizeof(DirInfo->Size) <= DirInfoEnd; | ||||||
|  |             DirInfo = (PVOID)((PUINT8)DirInfo + FSP_FSCTL_DEFAULT_ALIGN_UP(DirInfoSize))) | ||||||
|         { |         { | ||||||
|             if ((PUINT8)DirInfo + sizeof(DirInfo->Size) > DirInfoEnd) |  | ||||||
|                 break; |  | ||||||
|  |  | ||||||
|             DirInfoSize = DirInfo->Size; |             DirInfoSize = DirInfo->Size; | ||||||
|  |  | ||||||
|             if (sizeof(FSP_FSCTL_DIR_INFO) > DirInfoSize) |             if (sizeof(FSP_FSCTL_DIR_INFO) > DirInfoSize) | ||||||
| @@ -154,7 +153,7 @@ static NTSTATUS FspFsvolQueryDirectoryCopy( | |||||||
|             if (0 != DirectoryOffset && !DirectoryOffsetFound) |             if (0 != DirectoryOffset && !DirectoryOffsetFound) | ||||||
|             { |             { | ||||||
|                 DirectoryOffsetFound = DirInfo->NextOffset == DirectoryOffset; |                 DirectoryOffsetFound = DirInfo->NextOffset == DirectoryOffset; | ||||||
|                 goto NextDirInfo; |                 continue; | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             FileName.Length = |             FileName.Length = | ||||||
| @@ -217,7 +216,7 @@ static NTSTATUS FspFsvolQueryDirectoryCopy( | |||||||
|                     break; |                     break; | ||||||
|                 default: |                 default: | ||||||
|                     ASSERT(0); |                     ASSERT(0); | ||||||
|                     return STATUS_INVALID_INFO_CLASS; |                     break; | ||||||
|                 } |                 } | ||||||
|  |  | ||||||
|                 if (ReturnSingleEntry) |                 if (ReturnSingleEntry) | ||||||
| @@ -226,9 +225,8 @@ static NTSTATUS FspFsvolQueryDirectoryCopy( | |||||||
|                 DestBuf = (PVOID)((PUINT8)DestBuf + |                 DestBuf = (PVOID)((PUINT8)DestBuf + | ||||||
|                     FSP_FSCTL_ALIGN_UP(BaseInfoLen + FileName.Length, sizeof(LONGLONG))); |                     FSP_FSCTL_ALIGN_UP(BaseInfoLen + FileName.Length, sizeof(LONGLONG))); | ||||||
|             } |             } | ||||||
|  |             else | ||||||
|         NextDirInfo: |                 *PDirectoryOffset = DirInfo->NextOffset; | ||||||
|             DirInfo = (PVOID)((PUINT8)DirInfo + FSP_FSCTL_DEFAULT_ALIGN_UP(DirInfoSize)); |  | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|     except (EXCEPTION_EXECUTE_HANDLER) |     except (EXCEPTION_EXECUTE_HANDLER) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user