mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-31 11:17:20 +02:00
console/argtable3: fix usage of char as argument to ctype functions
This commit is contained in:
@ -1125,8 +1125,8 @@ char * arg_strptime(const char *buf, const char *fmt, struct tm *tm)
|
|||||||
alt_format = 0;
|
alt_format = 0;
|
||||||
|
|
||||||
/* Eat up white-space. */
|
/* Eat up white-space. */
|
||||||
if (isspace(c)) {
|
if (isspace((int) c)) {
|
||||||
while (isspace(*bp))
|
while (isspace((int) *bp))
|
||||||
bp++;
|
bp++;
|
||||||
|
|
||||||
fmt++;
|
fmt++;
|
||||||
@ -1400,7 +1400,7 @@ literal:
|
|||||||
case 'n': /* Any kind of white-space. */
|
case 'n': /* Any kind of white-space. */
|
||||||
case 't':
|
case 't':
|
||||||
LEGAL_ALT(0);
|
LEGAL_ALT(0);
|
||||||
while (isspace(*bp))
|
while (isspace((int) *bp))
|
||||||
bp++;
|
bp++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -2085,7 +2085,7 @@ static long int strtol0X(const char * str,
|
|||||||
const char *ptr = str; /* ptr to current position in str */
|
const char *ptr = str; /* ptr to current position in str */
|
||||||
|
|
||||||
/* skip leading whitespace */
|
/* skip leading whitespace */
|
||||||
while (isspace(*ptr))
|
while (isspace((int) *ptr))
|
||||||
ptr++;
|
ptr++;
|
||||||
/* printf("1) %s\n",ptr); */
|
/* printf("1) %s\n",ptr); */
|
||||||
|
|
||||||
@ -2114,7 +2114,7 @@ static long int strtol0X(const char * str,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* printf("3) %s\n",ptr); */
|
/* printf("3) %s\n",ptr); */
|
||||||
if (toupper(*ptr++) != toupper(X))
|
if (toupper((int) *ptr++) != toupper((int) X))
|
||||||
{
|
{
|
||||||
/* printf("failed to detect '%c'\n",X); */
|
/* printf("failed to detect '%c'\n",X); */
|
||||||
*endptr = str;
|
*endptr = str;
|
||||||
@ -2141,7 +2141,7 @@ static long int strtol0X(const char * str,
|
|||||||
static int detectsuffix(const char *str, const char *suffix)
|
static int detectsuffix(const char *str, const char *suffix)
|
||||||
{
|
{
|
||||||
/* scan pairwise through strings until mismatch detected */
|
/* scan pairwise through strings until mismatch detected */
|
||||||
while( toupper(*str) == toupper(*suffix) )
|
while( toupper((int) *str) == toupper((int) *suffix) )
|
||||||
{
|
{
|
||||||
/* printf("'%c' '%c'\n", *str, *suffix); */
|
/* printf("'%c' '%c'\n", *str, *suffix); */
|
||||||
|
|
||||||
@ -2160,7 +2160,7 @@ static int detectsuffix(const char *str, const char *suffix)
|
|||||||
return 0; /* failed to consume entire suffix */
|
return 0; /* failed to consume entire suffix */
|
||||||
|
|
||||||
/* skip any remaining whitespace in str */
|
/* skip any remaining whitespace in str */
|
||||||
while (isspace(*str))
|
while (isspace((int) *str))
|
||||||
str++;
|
str++;
|
||||||
|
|
||||||
/* return 1 (success) if we have reached end of str else return 0 (fail) */
|
/* return 1 (success) if we have reached end of str else return 0 (fail) */
|
||||||
@ -3034,7 +3034,7 @@ static TRexChar trex_escapechar(TRex *exp)
|
|||||||
case 'f': exp->_p++; return '\f';
|
case 'f': exp->_p++; return '\f';
|
||||||
default: return (*exp->_p++);
|
default: return (*exp->_p++);
|
||||||
}
|
}
|
||||||
} else if(!scisprint(*exp->_p)) trex_error(exp,_SC("letter expected"));
|
} else if(!scisprint((int) *exp->_p)) trex_error(exp,_SC("letter expected"));
|
||||||
return (*exp->_p++);
|
return (*exp->_p++);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3076,7 +3076,7 @@ static int trex_charnode(TRex *exp,TRexBool isclass)
|
|||||||
return trex_newnode(exp,t);
|
return trex_newnode(exp,t);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(!scisprint(*exp->_p)) {
|
else if(!scisprint((int) *exp->_p)) {
|
||||||
|
|
||||||
trex_error(exp,_SC("letter expected"));
|
trex_error(exp,_SC("letter expected"));
|
||||||
}
|
}
|
||||||
@ -3137,7 +3137,7 @@ static int trex_parsenumber(TRex *exp)
|
|||||||
int ret = *exp->_p-'0';
|
int ret = *exp->_p-'0';
|
||||||
int positions = 10;
|
int positions = 10;
|
||||||
exp->_p++;
|
exp->_p++;
|
||||||
while(isdigit(*exp->_p)) {
|
while(isdigit((int) *exp->_p)) {
|
||||||
ret = ret*10+(*exp->_p++-'0');
|
ret = ret*10+(*exp->_p++-'0');
|
||||||
if(positions==1000000000) trex_error(exp,_SC("overflow in numeric constant"));
|
if(positions==1000000000) trex_error(exp,_SC("overflow in numeric constant"));
|
||||||
positions *= 10;
|
positions *= 10;
|
||||||
@ -3189,7 +3189,7 @@ static int trex_element(TRex *exp)
|
|||||||
case TREX_SYMBOL_GREEDY_ZERO_OR_ONE: p0 = 0; p1 = 1; exp->_p++; isgreedy = TRex_True; break;
|
case TREX_SYMBOL_GREEDY_ZERO_OR_ONE: p0 = 0; p1 = 1; exp->_p++; isgreedy = TRex_True; break;
|
||||||
case '{':
|
case '{':
|
||||||
exp->_p++;
|
exp->_p++;
|
||||||
if(!isdigit(*exp->_p)) trex_error(exp,_SC("number expected"));
|
if(!isdigit((int) *exp->_p)) trex_error(exp,_SC("number expected"));
|
||||||
p0 = (unsigned short)trex_parsenumber(exp);
|
p0 = (unsigned short)trex_parsenumber(exp);
|
||||||
/*******************************/
|
/*******************************/
|
||||||
switch(*exp->_p) {
|
switch(*exp->_p) {
|
||||||
@ -3199,7 +3199,7 @@ static int trex_element(TRex *exp)
|
|||||||
case ',':
|
case ',':
|
||||||
exp->_p++;
|
exp->_p++;
|
||||||
p1 = 0xFFFF;
|
p1 = 0xFFFF;
|
||||||
if(isdigit(*exp->_p)){
|
if(isdigit((int) *exp->_p)){
|
||||||
p1 = (unsigned short)trex_parsenumber(exp);
|
p1 = (unsigned short)trex_parsenumber(exp);
|
||||||
}
|
}
|
||||||
trex_expect(exp,'}');
|
trex_expect(exp,'}');
|
||||||
@ -3252,8 +3252,9 @@ static int trex_list(TRex *exp)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static TRexBool trex_matchcclass(int cclass,TRexChar c)
|
static TRexBool trex_matchcclass(int cclass,TRexChar ch)
|
||||||
{
|
{
|
||||||
|
int c = ch;
|
||||||
switch(cclass) {
|
switch(cclass) {
|
||||||
case 'a': return isalpha(c)?TRex_True:TRex_False;
|
case 'a': return isalpha(c)?TRex_True:TRex_False;
|
||||||
case 'A': return !isalpha(c)?TRex_True:TRex_False;
|
case 'A': return !isalpha(c)?TRex_True:TRex_False;
|
||||||
@ -3415,10 +3416,10 @@ static const TRexChar *trex_matchnode(TRex* exp,TRexNode *node,const TRexChar *s
|
|||||||
return cur;
|
return cur;
|
||||||
}
|
}
|
||||||
case OP_WB:
|
case OP_WB:
|
||||||
if((str == exp->_bol && !isspace(*str))
|
if((str == exp->_bol && !isspace((int) *str))
|
||||||
|| ((str == exp->_eol && !isspace(*(str-1))))
|
|| ((str == exp->_eol && !isspace((int) *(str-1))))
|
||||||
|| ((!isspace(*str) && isspace(*(str+1))))
|
|| ((!isspace((int) *str) && isspace((int) *(str+1))))
|
||||||
|| ((isspace(*str) && !isspace(*(str+1)))) ) {
|
|| ((isspace((int) *str) && !isspace((int) *(str+1)))) ) {
|
||||||
return (node->left == 'b')?str:NULL;
|
return (node->left == 'b')?str:NULL;
|
||||||
}
|
}
|
||||||
return (node->left == 'b')?NULL:str;
|
return (node->left == 'b')?NULL:str;
|
||||||
@ -4778,7 +4779,7 @@ void arg_print_formatted( FILE *fp,
|
|||||||
/* Eat leading whitespaces. This is essential because while
|
/* Eat leading whitespaces. This is essential because while
|
||||||
wrapping lines, there will often be a whitespace at beginning
|
wrapping lines, there will often be a whitespace at beginning
|
||||||
of line */
|
of line */
|
||||||
while ( isspace(*(text + line_start)) )
|
while ( isspace((int) *(text + line_start)) )
|
||||||
{ line_start++; }
|
{ line_start++; }
|
||||||
|
|
||||||
if ((line_end - line_start) > colwidth )
|
if ((line_end - line_start) > colwidth )
|
||||||
@ -4787,7 +4788,7 @@ void arg_print_formatted( FILE *fp,
|
|||||||
/* Find last whitespace, that fits into line */
|
/* Find last whitespace, that fits into line */
|
||||||
while ( ( line_end > line_start )
|
while ( ( line_end > line_start )
|
||||||
&& ( line_end - line_start > colwidth )
|
&& ( line_end - line_start > colwidth )
|
||||||
&& !isspace(*(text + line_end)))
|
&& !isspace((int) *(text + line_end)))
|
||||||
{ line_end--; }
|
{ line_end--; }
|
||||||
|
|
||||||
/* Do not print trailing whitespace. If this text
|
/* Do not print trailing whitespace. If this text
|
||||||
|
Reference in New Issue
Block a user