* ntdll.h (RtlEqualUnicodePathPrefix): Rename from RtlEqualPathPrefix.

(RtlEqualUnicodePathSuffix): Rename from RtlEqualPathSuffix.
	* fhandler_disk_file.cc (fhandler_disk_file::link): Accommodate above
	change.
This commit is contained in:
Corinna Vinschen
2007-07-28 16:08:45 +00:00
parent 74c5e8c73a
commit 81e98baf81
3 changed files with 17 additions and 10 deletions

View File

@ -1051,9 +1051,10 @@ fhandler_disk_file::link (const char *newpath)
newpc.check (newpath, PC_SYM_NOFOLLOW);
}
else if (!pc.isdir ()
&& RtlEqualPathSuffix (pc.get_nt_native_path (), L".exe", TRUE)
&& !RtlEqualPathSuffix (newpc.get_nt_native_path (), L".exe",
TRUE))
&& RtlEqualUnicodePathSuffix (pc.get_nt_native_path (),
L".exe", TRUE)
&& !RtlEqualUnicodePathSuffix (newpc.get_nt_native_path (),
L".exe", TRUE))
{
/* Executable hack. */
stpcpy (stpcpy (new_buf, newpath), ".exe");
@ -1066,8 +1067,7 @@ fhandler_disk_file::link (const char *newpath)
NTSTATUS status;
OBJECT_ATTRIBUTES attr;
IO_STATUS_BLOCK io;
status = NtOpenFile (&fh, 0,
pc.get_object_attr (attr, sec_none_nih), &io,
status = NtOpenFile (&fh, 0, pc.get_object_attr (attr, sec_none_nih), &io,
FILE_SHARE_VALID_FLAGS,
FILE_OPEN_FOR_BACKUP_INTENT | FILE_OPEN_REPARSE_POINT);
if (!NT_SUCCESS (status))