* cygpath.cc (get_long_name): Fallback to get_long_path_name_w32impl.

This commit is contained in:
Corinna Vinschen 2006-07-31 07:31:56 +00:00
parent 4838aa88d9
commit acc31d1a90
2 changed files with 15 additions and 4 deletions

View File

@ -1,3 +1,7 @@
2006-07-30 Ilya Bobir <ilya@po4ta.com>
* cygpath.cc (get_long_name): Fallback to get_long_path_name_w32impl.
2006-07-27 Corinna Vinschen <corinna@vinschen.de>
* cygpath.c (get_long_name): Cover the case that GetLongPathName

View File

@ -241,15 +241,22 @@ get_long_name (const char *filename, DWORD& len)
len = GetLongPathName (filename, buf, MAX_PATH);
if (len == 0)
{
if (GetLastError () == ERROR_INVALID_PARAMETER)
DWORD err = GetLastError ();
if (err == ERROR_INVALID_PARAMETER)
{
fprintf (stderr, "%s: cannot create long name of %s\n", prog_name,
filename);
exit (2);
}
buf[0] = '\0';
strncat (buf, filename, MAX_PATH - 1);
len = strlen (buf);
else if (err == ERROR_FILE_NOT_FOUND)
len = get_long_path_name_w32impl (filename, buf, MAX_PATH);
else
{
buf[0] = '\0';
strncat (buf, filename, MAX_PATH - 1);
len = strlen (buf);
}
}
sbuf = (char *) malloc (len + 1);
if (!sbuf)