diff options
Diffstat (limited to 'src/backend/utils/init')
| -rw-r--r-- | src/backend/utils/init/findbe.c | 10 | ||||
| -rw-r--r-- | src/backend/utils/init/miscinit.c | 10 |
2 files changed, 12 insertions, 8 deletions
diff --git a/src/backend/utils/init/findbe.c b/src/backend/utils/init/findbe.c index ce5c521f3e0..94d744bce9c 100644 --- a/src/backend/utils/init/findbe.c +++ b/src/backend/utils/init/findbe.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/init/Attic/findbe.c,v 1.31 2002/11/02 15:54:13 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/init/Attic/findbe.c,v 1.32 2003/04/04 20:42:12 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -159,14 +159,14 @@ FindExec(char *full_path, const char *argv0, const char *binary_name) * (making sure that a relative path is made absolute before returning * it). */ - if (argv0 && (p = strrchr(argv0, '/')) && *++p) + if (argv0 && (p = last_path_separator(argv0)) && *++p) { - if (*argv0 == '/' || !getcwd(buf, MAXPGPATH)) + if (is_absolute_path(argv0) || !getcwd(buf, MAXPGPATH)) buf[0] = '\0'; else strcat(buf, "/"); strcat(buf, argv0); - p = strrchr(buf, '/'); + p = last_path_separator(buf); strcpy(++p, binary_name); if (ValidateBinary(buf) == 0) { @@ -194,7 +194,7 @@ FindExec(char *full_path, const char *argv0, const char *binary_name) continue; if (endp) *endp = '\0'; - if (*startp == '/' || !getcwd(buf, MAXPGPATH)) + if (is_absolute_path(startp) || !getcwd(buf, MAXPGPATH)) buf[0] = '\0'; else strcat(buf, "/"); diff --git a/src/backend/utils/init/miscinit.c b/src/backend/utils/init/miscinit.c index 8b49ca2e584..6ffd1e01b97 100644 --- a/src/backend/utils/init/miscinit.c +++ b/src/backend/utils/init/miscinit.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/init/miscinit.c,v 1.101 2003/03/20 04:51:44 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/init/miscinit.c,v 1.102 2003/04/04 20:42:12 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -134,7 +134,7 @@ SetDataDir(const char *dir) AssertArg(dir); /* If presented path is relative, convert to absolute */ - if (dir[0] != '/') + if (!is_absolute_path(dir)) { char *buf; size_t buflen; @@ -179,7 +179,11 @@ SetDataDir(const char *dir) * generating funny-looking paths to individual files. */ newlen = strlen(new); - if (newlen > 1 && new[newlen - 1] == '/') + if (newlen > 1 && new[newlen - 1] == '/' +#ifdef WIN32 + || new[newlen - 1] == '\\' +#endif + ) new[newlen - 1] = '\0'; if (DataDir) |
