diff --git a/ntoskrnl/io/iomgr/iofunc.c b/ntoskrnl/io/iomgr/iofunc.c index 784a836a15d..b9bf75736f5 100644 --- a/ntoskrnl/io/iomgr/iofunc.c +++ b/ntoskrnl/io/iomgr/iofunc.c @@ -4259,7 +4259,7 @@ NtQueryVolumeInformationFile(IN HANDLE FileHandle, /* This is to be handled by the kernel, not by FSD */ else if (FsInformationClass == FileFsDriverPathInformation) { - PFILE_FS_DRIVER_PATH_INFORMATION DriverPathInfo; + _SEH2_VOLATILE PFILE_FS_DRIVER_PATH_INFORMATION DriverPathInfo = NULL; _SEH2_TRY { @@ -4270,7 +4270,9 @@ NtQueryVolumeInformationFile(IN HANDLE FileHandle, RtlCopyMemory(DriverPathInfo, FsInformation, Length); /* Is the driver in the IO path? */ - Status = IopGetDriverPathInformation(FileObject, DriverPathInfo, Length); + Status = IopGetDriverPathInformation(FileObject, + (PFILE_FS_DRIVER_PATH_INFORMATION)DriverPathInfo, + Length); /* We failed, don't continue execution */ if (!NT_SUCCESS(Status)) {