* hookapi.cc (rvadelta): Change argument to DWORD to eliminate a compiler

warning.
* path.h (path_conv::set_cygexec): New function.
* spawn.cc (av::iscygwin): Eliminate.
(av::av): Don't initialize iscygwin.
(spawn_guts): Just use real_path.iscygexec for all tests.
(av::fixup): Short circuit test if .exe extension and known cygexec.  Set
cygexec flag appropriately if we find that program uses cygwin1.dll.
This commit is contained in:
Christopher Faylor
2005-09-08 00:57:12 +00:00
parent 31fcc87ed9
commit 70d0243ce9
4 changed files with 28 additions and 13 deletions

View File

@ -151,6 +151,13 @@ class path_conv
int is_lnk_special () const {return is_fs_device () || isfifo () || is_lnk_symlink ();}
int issocket () const {return dev.devn == FH_UNIX;}
int iscygexec () const {return path_flags & PATH_CYGWIN_EXEC;}
void set_cygexec (bool isset)
{
if (isset)
path_flags |= PATH_CYGWIN_EXEC;
else
path_flags &= ~PATH_CYGWIN_EXEC;
}
bool isro () const {return !!(path_flags & PATH_RO);}
bool exists () const {return fileattr != INVALID_FILE_ATTRIBUTES;}
bool has_attribute (DWORD x) const {return exists () && (fileattr & x);}