* Use new unified status_flag accessor methods from classes fhandler_*,
tty_min, mtinfo and fs_info thoroughout. * fhandler.h: Redefine all set_close_on_exec methods to take a bool argument. (enum conn_state): Rename from connect_state. (class fhandler_base): Rename some status flags to align with accessor method names. Drop encoded flag entirely. Unify status accessor methods. Const'ify all read accessor methods. (class fhandler_socket): Ditto. (class fhandler_dev_raw): Ditto. * fhandler_disk_file.cc (fhandler_base::fstat_fs): Use fs.fs_is_fat() instead of evaluating FATness of file system here. (fhandler_disk_file::opendir): Drop call to set_encoded(). (fhandler_disk_file::readdir): Use pc.isencoded() directly. * mtinfo.h (class mtinfo_drive): Const'ify all read accessor methods. * path.cc (fsinfo_cnt): Add. (fs_info::update): Accomodate class changes. Evaluate file system name specific flags right here. Add thread safety for reading and writing global fsinfo array. * path.h (enum path_types): Drop values for flags kept in fs already. (struct fs_info): Move status informatin into private struct type status_flags. Add accessor methods. Remove path and file system name string arrays in favor of status bits. (class path_conv): Use new fs_info status information where appropriate. (path_conf::fs_has_ea): Rename from fs_fast_ea. (path_conf::fs_has_acls): New method. (path_conf::root_dir): Remove. (path_conf::volname): Remove. * syscalls (statfs): Evaluate root dir locally. * tty.h (class tty_min): Unify status accessor methods. Const'ify all read accessor methods.
This commit is contained in:
@@ -41,7 +41,7 @@ fhandler_pipe::lseek (_off64_t offset, int whence)
|
||||
}
|
||||
|
||||
void
|
||||
fhandler_pipe::set_close_on_exec (int val)
|
||||
fhandler_pipe::set_close_on_exec (bool val)
|
||||
{
|
||||
fhandler_base::set_close_on_exec (val);
|
||||
if (guard)
|
||||
@@ -230,12 +230,12 @@ fhandler_pipe::create (fhandler_pipe *fhs[2], unsigned psize, int mode, bool fif
|
||||
fhs[1]->init (w, GENERIC_WRITE, binmode);
|
||||
if (mode & O_NOINHERIT)
|
||||
{
|
||||
fhs[0]->set_close_on_exec_flag (1);
|
||||
fhs[1]->set_close_on_exec_flag (1);
|
||||
fhs[0]->close_on_exec (true);
|
||||
fhs[1]->close_on_exec (true);
|
||||
}
|
||||
|
||||
fhs[0]->read_state = CreateEvent (&sec_none_nih, FALSE, FALSE, NULL);
|
||||
fhs[0]->set_need_fork_fixup ();
|
||||
fhs[0]->need_fork_fixup (true);
|
||||
ProtectHandle1 (fhs[0]->read_state, read_state);
|
||||
|
||||
res = 0;
|
||||
@@ -312,7 +312,7 @@ _pipe (int filedes[2], unsigned int psize, int mode)
|
||||
{
|
||||
cygheap_fdnew fdin;
|
||||
cygheap_fdnew fdout (fdin, false);
|
||||
fhs[0]->set_r_no_interrupt (1);
|
||||
fhs[0]->uninterruptible_io (true);
|
||||
fdin = fhs[0];
|
||||
fdout = fhs[1];
|
||||
filedes[0] = fdin;
|
||||
|
Reference in New Issue
Block a user