mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-02-18 23:12:15 +08:00
2005-01-26 Pierre Humblet <pierre.humblet@ieee.org>
* path.cc (path_conv::check): Return ENOTDIR rather than ENOENT when a component is not a directory. Remove unreachable code. (digits): Delete.
This commit is contained in:
parent
0e32d1ffcd
commit
9df58602b6
@ -1,3 +1,9 @@
|
|||||||
|
2005-01-26 Pierre Humblet <pierre.humblet@ieee.org>
|
||||||
|
|
||||||
|
* path.cc (path_conv::check): Return ENOTDIR rather than ENOENT
|
||||||
|
when a component is not a directory. Remove unreachable code.
|
||||||
|
(digits): Delete.
|
||||||
|
|
||||||
2005-01-25 Christopher Faylor <cgf@timesys.com>
|
2005-01-25 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
* pinfo.h (pinfo::init): Make third parameter non-optional and
|
* pinfo.h (pinfo::init): Make third parameter non-optional and
|
||||||
|
@ -655,12 +655,6 @@ path_conv::check (const char *src, unsigned opt,
|
|||||||
full_path[3] = '\0';
|
full_path[3] = '\0';
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((opt & PC_SYM_IGNORE) && pcheck_case == PCHECK_RELAXED)
|
|
||||||
{
|
|
||||||
fileattr = GetFileAttributes (this->path);
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
symlen = sym.check (full_path, suff, opt | fs.has_ea ());
|
symlen = sym.check (full_path, suff, opt | fs.has_ea ());
|
||||||
|
|
||||||
if (sym.minor || sym.major)
|
if (sym.minor || sym.major)
|
||||||
@ -706,6 +700,11 @@ path_conv::check (const char *src, unsigned opt,
|
|||||||
error = sym.error;
|
error = sym.error;
|
||||||
if (component == 0)
|
if (component == 0)
|
||||||
add_ext_from_sym (sym);
|
add_ext_from_sym (sym);
|
||||||
|
else if (!(sym.fileattr & FILE_ATTRIBUTE_DIRECTORY))
|
||||||
|
{
|
||||||
|
error = ENOTDIR;
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
if (pcheck_case == PCHECK_RELAXED)
|
if (pcheck_case == PCHECK_RELAXED)
|
||||||
goto out; // file found
|
goto out; // file found
|
||||||
/* Avoid further symlink evaluation. Only case checks are
|
/* Avoid further symlink evaluation. Only case checks are
|
||||||
@ -939,15 +938,6 @@ path_conv::~path_conv ()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static __inline int
|
|
||||||
digits (const char *name)
|
|
||||||
{
|
|
||||||
char *p;
|
|
||||||
int n = strtol (name, &p, 10);
|
|
||||||
|
|
||||||
return p > name && !*p ? n : -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Return true if src_path is a valid, internally supported device name.
|
/* Return true if src_path is a valid, internally supported device name.
|
||||||
In that case, win32_path gets the corresponding NT device name and
|
In that case, win32_path gets the corresponding NT device name and
|
||||||
dev is appropriately filled with device information. */
|
dev is appropriately filled with device information. */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user