* fhandler_disk_file.cc (fhandler_base::utimes_fs): Ignore
ERROR_NOT_SUPPORTED to workaround Win9x weirdness. * path.cc (symlink_info::check): Remap ERROR_INVALID_FUNTION to ERROR_FILE_NOT_FOUND for the same reason.
This commit is contained in:
parent
68a3f0d34a
commit
68401acd24
|
@ -1,3 +1,10 @@
|
||||||
|
2005-04-16 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* fhandler_disk_file.cc (fhandler_base::utimes_fs): Ignore
|
||||||
|
ERROR_NOT_SUPPORTED to workaround Win9x weirdness.
|
||||||
|
* path.cc (symlink_info::check): Remap ERROR_INVALID_FUNTION to
|
||||||
|
ERROR_FILE_NOT_FOUND for the same reason.
|
||||||
|
|
||||||
2005-04-16 Corinna Vinschen <corinna@vinschen.de>
|
2005-04-16 Corinna Vinschen <corinna@vinschen.de>
|
||||||
Pierre Humblet <pierre.humblet@ieee.org>
|
Pierre Humblet <pierre.humblet@ieee.org>
|
||||||
|
|
||||||
|
|
|
@ -870,7 +870,9 @@ fhandler_base::utimes_fs (const struct timeval *tvp)
|
||||||
DWORD errcode = GetLastError ();
|
DWORD errcode = GetLastError ();
|
||||||
if (is_fs_special ())
|
if (is_fs_special ())
|
||||||
SetFileAttributes (pc, pc);
|
SetFileAttributes (pc, pc);
|
||||||
if (!res)
|
/* Opening a directory on a 9x share from a NT machine works(!), but
|
||||||
|
then the SetFileTimes fails with ERROR_NOT_SUPPORTED. Oh well... */
|
||||||
|
if (!res && errcode != ERROR_NOT_SUPPORTED)
|
||||||
{
|
{
|
||||||
close ();
|
close ();
|
||||||
__seterrno_from_win_error (errcode);
|
__seterrno_from_win_error (errcode);
|
||||||
|
|
|
@ -3112,7 +3112,14 @@ symlink_info::check (char *path, const suffix_info *suffixes, unsigned opt)
|
||||||
matter, so we just return 0. For example, getting the
|
matter, so we just return 0. For example, getting the
|
||||||
attributes of \\HOST will typically fail. */
|
attributes of \\HOST will typically fail. */
|
||||||
debug_printf ("GetFileAttributes (%s) failed", suffix.path);
|
debug_printf ("GetFileAttributes (%s) failed", suffix.path);
|
||||||
set_error (geterrno_from_win_error (GetLastError (), EACCES));
|
|
||||||
|
/* The above comment is not *quite* right. When calling
|
||||||
|
GetFileAttributes for a non-existant file an a Win9x share,
|
||||||
|
GetLastError returns ERROR_INVALID_FUNCTION. Go figure! */
|
||||||
|
DWORD win_error = GetLastError ();
|
||||||
|
if (win_error == ERROR_INVALID_FUNCTION)
|
||||||
|
win_error = ERROR_FILE_NOT_FOUND;
|
||||||
|
set_error (geterrno_from_win_error (win_error, EACCES));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue