OSDN Git Service

Fix some more compatibility issues (ctype.h macros must never be passed
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 2 Apr 2004 00:41:18 +0000 (00:41 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 2 Apr 2004 00:41:18 +0000 (00:41 +0000)
signed chars...)

contrib/tsearch2/dict_syn.c
contrib/tsearch2/prs_dcfg.c
contrib/tsearch2/tsvector.c

index 8364223..046a594 100644 (file)
@@ -37,14 +37,14 @@ findwrd(char *in, char **end)
        char       *start;
 
        *end = NULL;
-       while (*in && isspace(*in))
+       while (*in && isspace((unsigned char) *in))
                in++;
 
        if (!in)
                return NULL;
        start = in;
 
-       while (*in && !isspace(*in))
+       while (*in && !isspace((unsigned char) *in))
                in++;
 
        *end = in;
index 6b553e4..0837451 100644 (file)
@@ -66,12 +66,12 @@ parse_cfgdict(text *in, Map ** m)
        {
                if (state == CS_WAITKEY)
                {
-                       if (isalpha(*ptr))
+                       if (isalpha((unsigned char) *ptr))
                        {
                                begin = ptr;
                                state = CS_INKEY;
                        }
-                       else if (!isspace(*ptr))
+                       else if (!isspace((unsigned char) *ptr))
                                ereport(ERROR,
                                                (errcode(ERRCODE_SYNTAX_ERROR),
                                                 errmsg("syntax error"),
@@ -80,7 +80,7 @@ parse_cfgdict(text *in, Map ** m)
                }
                else if (state == CS_INKEY)
                {
-                       if (isspace(*ptr))
+                       if (isspace((unsigned char) *ptr))
                        {
                                mptr->key = nstrdup(begin, ptr - begin);
                                state = CS_WAITEQ;
@@ -90,7 +90,7 @@ parse_cfgdict(text *in, Map ** m)
                                mptr->key = nstrdup(begin, ptr - begin);
                                state = CS_WAITVALUE;
                        }
-                       else if (!isalpha(*ptr))
+                       else if (!isalpha((unsigned char) *ptr))
                                ereport(ERROR,
                                                (errcode(ERRCODE_SYNTAX_ERROR),
                                                 errmsg("syntax error"),
@@ -101,7 +101,7 @@ parse_cfgdict(text *in, Map ** m)
                {
                        if (*ptr == '=')
                                state = CS_WAITVALUE;
-                       else if (!isspace(*ptr))
+                       else if (!isspace((unsigned char) *ptr))
                                ereport(ERROR,
                                                (errcode(ERRCODE_SYNTAX_ERROR),
                                                 errmsg("syntax error"),
@@ -115,7 +115,7 @@ parse_cfgdict(text *in, Map ** m)
                                begin = ptr + 1;
                                state = CS_INVALUE;
                        }
-                       else if (!isspace(*ptr))
+                       else if (!isspace((unsigned char) *ptr))
                        {
                                begin = ptr;
                                state = CS_IN2VALUE;
@@ -134,7 +134,7 @@ parse_cfgdict(text *in, Map ** m)
                }
                else if (state == CS_IN2VALUE)
                {
-                       if (isspace(*ptr) || *ptr == ',')
+                       if (isspace((unsigned char) *ptr) || *ptr == ',')
                        {
                                mptr->value = nstrdup(begin, ptr - begin);
                                mptr++;
@@ -147,7 +147,7 @@ parse_cfgdict(text *in, Map ** m)
                {
                        if (*ptr == ',')
                                state = CS_WAITKEY;
-                       else if (!isspace(*ptr))
+                       else if (!isspace((unsigned char) *ptr))
                                ereport(ERROR,
                                                (errcode(ERRCODE_SYNTAX_ERROR),
                                                 errmsg("syntax error"),
index cc2e96c..827627b 100644 (file)
@@ -310,7 +310,7 @@ gettoken_tsvector(TI_IN_STATE * state)
                }
                else if (state->state == INPOSINFO)
                {
-                       if (isdigit(*(state->prsbuf)))
+                       if (isdigit((unsigned char) *(state->prsbuf)))
                        {
                                if (state->alen == 0)
                                {
@@ -373,9 +373,10 @@ gettoken_tsvector(TI_IN_STATE * state)
                                                         errmsg("syntax error")));
                                state->pos[*(uint16 *) (state->pos)].weight = 0;
                        }
-                       else if (isspace(*(state->prsbuf)) || *(state->prsbuf) == '\0')
+                       else if (isspace((unsigned char) *(state->prsbuf)) ||
+                                        *(state->prsbuf) == '\0')
                                return 1;
-                       else if (!isdigit(*(state->prsbuf)))
+                       else if (!isdigit((unsigned char) *(state->prsbuf)))
                                ereport(ERROR,
                                                (errcode(ERRCODE_SYNTAX_ERROR),
                                                 errmsg("syntax error")));