* fhandler.h (fhandler_base::pc): Make public.
* fhandler_disk_file.cc (fhandler_disk_file::link): Drop extern declaration of stat_suffixes. Use NT native path in debug output. (fhandler_base::utimes_fs): Simplify closeit case. Use close_fs to close newly opened file handle. (fhandler_base::open_fs): Use NT native path in debug output. * path.cc: Throughout drop extern declaration of stat_suffixes. * path.h (stat_suffixes): Declare. * sec_acl.cc (acl_worker): Drop extern declaration of stat_suffixes. * times.cc (utimes_worker): Take path_conv as parameter instead of single-byte pathnam, drop nofollow argument, accommodate throughout. Compare UNICODE paths when enumerating file descriptors. Fix formatting. Use NT native path in debug output.
This commit is contained in:
@ -138,7 +138,6 @@ class fhandler_base
|
||||
|
||||
DWORD fs_flags;
|
||||
HANDLE read_state;
|
||||
path_conv pc;
|
||||
int wait_overlapped (bool&, bool, DWORD *) __attribute__ ((regparm (3)));
|
||||
bool setup_overlapped () __attribute__ ((regparm (1)));
|
||||
void destroy_overlapped () __attribute__ ((regparm (1)));
|
||||
@ -147,6 +146,8 @@ class fhandler_base
|
||||
class fhandler_base *archetype;
|
||||
int usecount;
|
||||
|
||||
path_conv pc;
|
||||
|
||||
virtual void set_name (path_conv &pc);
|
||||
int error () const {return pc.error;}
|
||||
void set_error (int error) {pc.error = error;}
|
||||
@ -250,7 +251,7 @@ class fhandler_base
|
||||
bool has_attribute (DWORD x) const {return pc.has_attribute (x);}
|
||||
const char *get_name () const { return pc.normalized_path; }
|
||||
const char *get_win32_name () { return pc.get_win32 (); }
|
||||
__ino64_t get_namehash () { return namehash ?: namehash = hash_path_name (0, get_win32_name ()); }
|
||||
__ino64_t get_namehash () { return namehash ?: namehash = hash_path_name (0, get_win32_name ()); }
|
||||
/* Returns name used for /proc/<pid>/fd in buf. */
|
||||
virtual char *get_proc_fd_name (char *buf);
|
||||
|
||||
|
Reference in New Issue
Block a user