diff --git a/src/backend/utils/adt/arrayfuncs.c b/src/backend/utils/adt/arrayfuncs.c
index 308d8abd9e96d6163660968b4c6e6052db5eda3f..3918fb0484f7961e7ce641470486ccd24b48a943 100644
--- a/src/backend/utils/adt/arrayfuncs.c
+++ b/src/backend/utils/adt/arrayfuncs.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.110 2004/08/29 05:06:49 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.111 2004/09/02 20:05:40 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -543,7 +543,7 @@ ArrayCount(char *str, int *dim, char typdelim)
 							itemdone = true;
 							nelems[nest_level - 1]++;
 						}
-						else if (!isspace(*ptr))
+						else if (!isspace((unsigned char) *ptr))
 						{
 							/*
 							 * Other non-space characters must be after a
@@ -572,7 +572,7 @@ ArrayCount(char *str, int *dim, char typdelim)
 	/* only whitespace is allowed after the closing brace */
 	while (*ptr)
 	{
-		if (!isspace(*ptr++))
+		if (!isspace((unsigned char) *ptr++))
 			ereport(ERROR,
 					(errcode(ERRCODE_INVALID_TEXT_REPRESENTATION),
 					 errmsg("malformed array literal: \"%s\"", str)));
diff --git a/src/bin/pg_ctl/pg_ctl.c b/src/bin/pg_ctl/pg_ctl.c
index dda80adeaa40eca7f42db04b427360020b8a691e..37731054e39e7d0e5ad913373a37853c545328a7 100644
--- a/src/bin/pg_ctl/pg_ctl.c
+++ b/src/bin/pg_ctl/pg_ctl.c
@@ -4,7 +4,7 @@
  *
  * Portions Copyright (c) 1996-2004, PostgreSQL Global Development Group
  *
- * $PostgreSQL: pgsql/src/bin/pg_ctl/pg_ctl.c,v 1.30 2004/08/29 05:06:53 momjian Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_ctl/pg_ctl.c,v 1.31 2004/09/02 20:07:50 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -355,21 +355,21 @@ test_postmaster_connection(void)
 	for (p = post_opts; *p;)
 	{
 		/* advance past whitespace/quoting */
-		while (isspace(*p) || *p == '\'' || *p == '"')
+		while (isspace((unsigned char) *p) || *p == '\'' || *p == '"')
 			p++;
 
 		if (strncmp(p, "-p", strlen("-p")) == 0)
 		{
 			p += strlen("-p");
 			/* advance past whitespace/quoting */
-			while (isspace(*p) || *p == '\'' || *p == '"')
+			while (isspace((unsigned char) *p) || *p == '\'' || *p == '"')
 				p++;
 			StrNCpy(portstr, p, Min(strcspn(p, "\"'" WHITESPACE) + 1,
 									sizeof(portstr)));
 			/* keep looking, maybe there is another -p */
 		}
 		/* Advance to next whitespace */
-		while (*p && !isspace(*p))
+		while (*p && !isspace((unsigned char) *p))
 			p++;
 	}
 
@@ -385,17 +385,17 @@ test_postmaster_connection(void)
 			{
 				p = *optlines;
 
-				while (isspace(*p))
+				while (isspace((unsigned char) *p))
 					p++;
 				if (strncmp(p, "port", strlen("port")) != 0)
 					continue;
 				p += strlen("port");
-				while (isspace(*p))
+				while (isspace((unsigned char) *p))
 					p++;
 				if (*p != '=')
 					continue;
 				p++;
-				while (isspace(*p))
+				while (isspace((unsigned char) *p))
 					p++;
 				StrNCpy(portstr, p, Min(strcspn(p, "#" WHITESPACE) + 1,
 										sizeof(portstr)));