This is the mail archive of the
mailing list for the GDB project.
Re: [RFA/commit] Improve gdb_realpath for Windows hosts
Can you explain that why you avoid converting to lowercase?
/* The file system is case-insensitive but case-preserving.
So we do not lowercase the path. Otherwise, we might not
be able to display the original casing in a given path. */
I just thought that lowercase is another canonization of path, so you can have a uniform path when you set breakpoints(file specification)
The original code in iberty library is like:
/* The MS Windows method. If we don't have realpath, we assume we
don't have symlinks and just canonicalize to a Windows absolute
path. GetFullPath converts ../ and ./ in relative paths to
absolute paths, filling in current drive if one is not given
or using the current directory of a specified drive (eg, "E:foo").
It also converts all forward slashes to back slashes. */
#if defined (_WIN32)
DWORD len = GetFullPathName (filename, MAX_PATH, buf, &basename);
if (len == 0 || len > MAX_PATH - 1)
return xstrdup (filename);
/* The file system is case-preserving but case-insensitive,
Canonicalize to lowercase, using the codepage associated
with the process locale. */
CharLowerBuff (buf, len);
return xstrdup (buf);
ollydbg from codeblocks' forum