Fix unportable usage of <ctype.h> functions.

isdigit(), isspace(), etc are likely to give surprising results if passed a
signed char.  We should always cast the argument to unsigned char to avoid
that.  Error in commit 63d6b97fd, found by buildfarm member gaur.
Back-patch to 9.3, like that commit.
This commit is contained in:
Tom Lane 2017-11-07 13:49:36 -05:00
parent 0a13f1966d
commit 1a93c2536a

View File

@ -59,7 +59,7 @@ garbage_left(enum ARRAY_TYPE isarray, char **scan_length, enum COMPAT_MODE compa
/* skip invalid characters */ /* skip invalid characters */
do { do {
(*scan_length)++; (*scan_length)++;
} while (isdigit(**scan_length)); } while (isdigit((unsigned char) **scan_length));
} }
if (**scan_length != ' ' && **scan_length != '\0') if (**scan_length != ' ' && **scan_length != '\0')