* sec_acl.cc (getacl): Convert debug output to print native NT path.
* security.cc (set_file_attribute): Ditto.
* syscalls.cc (try_to_bin): Ditto and fix buggy debug statement.
+2007-08-16 Corinna Vinschen <corinna@vinschen.de>
+
+ * dir.cc (readdir_worker): Convert w32name to PUNICODE_STRING.
+ * sec_acl.cc (getacl): Convert debug output to print native NT path.
+ * security.cc (set_file_attribute): Ditto.
+ * syscalls.cc (try_to_bin): Ditto and fix buggy debug statement.
+
2007-08-16 Corinna Vinschen <corinna@vinschen.de>
* ntdll.h (RtlAcquirePebLock): Declare.
de->d_ino = ((fhandler_base *) dir->__fh)->get_namehash ();
if (!is_dot && !is_dot_dot)
{
- const char *w32name = ((fhandler_base *) dir->__fh)->get_win32_name ();
+ PUNICODE_STRING w32name =
+ ((fhandler_base *) dir->__fh)->pc.get_nt_native_path ();
DWORD devn = ((fhandler_base *) dir->__fh)->get_device ();
/* Paths below /proc don't have a Win32 pendant. */
if (isproc_dev (devn))
- de->d_ino = hash_path_name (de->d_ino, "/");
- /* A drive's root dir has a trailing backslash already. */
- else if (w32name[1] != ':' || w32name[2] != '\\' || w32name[3])
- de->d_ino = hash_path_name (de->d_ino, "\\");
+ de->d_ino = hash_path_name (de->d_ino, L"/");
+ else if (w32name->Buffer[w32name->Length / sizeof (WCHAR) - 1]
+ != L'\\')
+ de->d_ino = hash_path_name (de->d_ino, L"\\");
de->d_ino = hash_path_name (de->d_ino, de->d_name);
}
}
aclbufp[i].a_perm &= ~(DENY_R | DENY_W | DENY_X);
aclsort32 (pos, 0, aclbufp);
}
- syscall_printf ("%d = getacl (%s)", pos, pc.get_win32 ());
+ syscall_printf ("%d = getacl (%S)", pos, pc.get_nt_native_path ());
return pos;
}
}
else
ret = 0;
- syscall_printf ("%d = set_file_attribute (%s, %d, %d, %p)",
- ret, pc.get_win32 (), uid, gid, attribute);
+ syscall_printf ("%d = set_file_attribute (%S, %d, %d, %p)",
+ ret, pc.get_nt_native_path (), uid, gid, attribute);
return ret;
}
FileRenameInformation);
}
if (!NT_SUCCESS (status))
- debug_printf ("Move %s to %s failed, status = %p", win32_path.get_win32 (),
- recycler, status);
+ debug_printf ("Move %S to %S failed, status = %p",
+ win32_path.get_nt_native_path (), &recycler, status);
out:
if (rootdir)
NtClose (rootdir);