Commit ff2fbacc authored by Bruce Momjian's avatar Bruce Momjian

Fix trim_trailing_separator() to not trim c:\ nor \\network\ on Win32.

parent eee93173
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $PostgreSQL: pgsql/src/port/path.c,v 1.21 2004/07/10 22:58:42 tgl Exp $ * $PostgreSQL: pgsql/src/port/path.c,v 1.22 2004/07/11 02:59:42 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -389,7 +389,26 @@ static void ...@@ -389,7 +389,26 @@ static void
trim_trailing_separator(char *path) trim_trailing_separator(char *path)
{ {
char *p = path + strlen(path); char *p = path + strlen(path);
#ifdef WIN32
/* Skip over network and drive specifiers for win32 */
if (strlen(path) >= 2)
{
if (IS_DIR_SEP(path[0]) && IS_DIR_SEP(path[1]))
{
path += 2;
while (*path && !IS_DIR_SEP(*path))
path++;
}
else if (isalpha(path[0]) && path[1] == ':')
{
path++;
if (IS_DIR_SEP(path[1]))
path++;
}
}
#endif
/* trim off trailing slashes */ /* trim off trailing slashes */
if (p > path) if (p > path)
for (p--; p > path && IS_DIR_SEP(*p); p--) for (p--; p > path && IS_DIR_SEP(*p); p--)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment