aboutsummaryrefslogtreecommitdiff
path: root/src/port/path.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2009-04-03 23:27:17 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2009-04-03 23:27:17 +0000
commit5d7f69936e7d564d83a931885f4f14df4efccfc7 (patch)
treef635d8d89ce7ecb6496670069c1c7184c083c3e5 /src/port/path.c
parent1b2bb33a54a8008bd86a5f7b7ecbada95744eb61 (diff)
downloadpostgresql-5d7f69936e7d564d83a931885f4f14df4efccfc7.tar.gz
postgresql-5d7f69936e7d564d83a931885f4f14df4efccfc7.zip
Use (unsigned char) cast in argument of pg_tolower(). Maybe it works on
Windows without that, but we shouldn't put bad examples where people might copy them. Also, reformat slightly to improve the odds that pgindent won't go nuts on this.
Diffstat (limited to 'src/port/path.c')
-rw-r--r--src/port/path.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/port/path.c b/src/port/path.c
index bf3547a2cd1..7aa39c3195d 100644
--- a/src/port/path.c
+++ b/src/port/path.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/port/path.c,v 1.77 2009/04/03 11:52:08 mha Exp $
+ * $PostgreSQL: pgsql/src/port/path.c,v 1.78 2009/04/03 23:27:17 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -420,20 +420,22 @@ get_progname(const char *argv0)
/*
- * dir_strcmp: strcmp except any two DIR_SEP characters are considered equal
+ * dir_strcmp: strcmp except any two DIR_SEP characters are considered equal,
+ * and we honor filesystem case insensitivity if known
*/
static int
dir_strcmp(const char *s1, const char *s2)
{
while (*s1 && *s2)
{
+ if (
#ifndef WIN32
- if (*s1 != *s2 &&
+ *s1 != *s2
#else
/* On windows, paths are case-insensitive */
- if (pg_tolower(*s1) != pg_tolower(*s2) &&
+ pg_tolower((unsigned char) *s1) != pg_tolower((unsigned char) *s2)
#endif
- !(IS_DIR_SEP(*s1) && IS_DIR_SEP(*s2)))
+ && !(IS_DIR_SEP(*s1) && IS_DIR_SEP(*s2)))
return (int) *s1 - (int) *s2;
s1++, s2++;
}