* mount.cc (fs_info::update): Add comment.

* path.cc (symlink_info::check_reparse_point): Return -1 for volume
	mount points.  Explain why.
	(symlink_info::check): Call fs.update again for volume mount points.
	Explain why.
This commit is contained in:
Corinna Vinschen
2009-08-25 11:27:03 +00:00
parent 162a23c504
commit c177980e75
3 changed files with 26 additions and 3 deletions

View File

@ -134,6 +134,9 @@ fs_info::update (PUNICODE_STRING upath, HANDLE in_vol)
/* Always caseinsensitive. We really just need access to the drive. */
InitializeObjectAttributes (&attr, upath, OBJ_CASE_INSENSITIVE, NULL,
NULL);
/* Note: Don't use the FILE_OPEN_REPARSE_POINT flag here. The reason
is that symlink_info::check relies on being able to open a handle
to the target of a volume mount point. */
status = NtOpenFile (&vol, access, &attr, &io, FILE_SHARE_VALID_FLAGS,
FILE_OPEN_FOR_BACKUP_INTENT);
/* At least one filesystem (HGFS, VMware shared folders) doesn't like