msvcrt: Use the msvcrt ctype functions internally.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alexandre Julliard 2020-11-18 16:03:27 +01:00
parent 871d9863bc
commit b7fe06d0fa
6 changed files with 13 additions and 13 deletions

View file

@ -396,7 +396,7 @@ int CDECL MSVCRT_isblank(int c)
*/
int CDECL MSVCRT___isascii(int c)
{
return isascii((unsigned)c);
return ((unsigned)c < 0x80);
}
/*********************************************************************
@ -421,7 +421,7 @@ int CDECL MSVCRT_iswascii(MSVCRT_wchar_t c)
*/
int CDECL MSVCRT___iscsym(int c)
{
return (c < 127 && (isalnum(c) || c == '_'));
return (c < 127 && (MSVCRT_isalnum(c) || c == '_'));
}
/*********************************************************************
@ -429,7 +429,7 @@ int CDECL MSVCRT___iscsym(int c)
*/
int CDECL MSVCRT___iscsymf(int c)
{
return (c < 127 && (isalpha(c) || c == '_'));
return (c < 127 && (MSVCRT_isalpha(c) || c == '_'));
}
/*********************************************************************

View file

@ -3013,7 +3013,7 @@ int CDECL MSVCRT_stat64(const char* path, struct MSVCRT__stat64 * buf)
Also a letter as first char isn't enough to be classified
as a drive letter
*/
if (isalpha(*path)&& (*(path+1)==':'))
if (MSVCRT_isalpha(*path)&& (*(path+1)==':'))
buf->st_dev = buf->st_rdev = MSVCRT__toupper_l(*path, NULL) - 'A'; /* drive num */
else
buf->st_dev = buf->st_rdev = MSVCRT__getdrive() - 1;

View file

@ -1072,6 +1072,9 @@ void* __cdecl MSVCRT_malloc(MSVCRT_size_t);
void* __cdecl MSVCRT_calloc(MSVCRT_size_t,MSVCRT_size_t);
void* __cdecl MSVCRT_realloc(void*,MSVCRT_size_t);
int __cdecl MSVCRT_isalpha(int c);
int __cdecl MSVCRT_isdigit(int c);
int __cdecl MSVCRT_isspace(int c);
int __cdecl MSVCRT_iswalpha(MSVCRT_wint_t);
int __cdecl MSVCRT_iswspace(MSVCRT_wint_t);
int __cdecl MSVCRT_iswdigit(MSVCRT_wint_t);

View file

@ -57,7 +57,7 @@ static inline const APICHAR* FUNC_NAME(pf_parse_int)(const APICHAR *fmt, int *va
{
*val = 0;
while(isdigit(*fmt)) {
while (*fmt >= '0' && *fmt <= '9') {
*val *= 10;
*val += *fmt++ - '0';
}
@ -1041,7 +1041,7 @@ int FUNC_NAME(pf_printf)(FUNC_NAME(puts_clbk) pf_puts, void *puts_ctx, const API
flags.LeftAlign = TRUE;
flags.FieldLength = -flags.FieldLength;
}
} else while(isdigit(*p)) {
} else while (*p >= '0' && *p <= '9') {
flags.FieldLength *= 10;
flags.FieldLength += *p++ - '0';
}
@ -1059,7 +1059,7 @@ int FUNC_NAME(pf_printf)(FUNC_NAME(puts_clbk) pf_puts, void *puts_ctx, const API
i = -1;
flags.Precision = pf_args(args_ctx, i, VT_INT, valist).get_int;
} else while(isdigit(*p)) {
} else while (*p >= '0' && *p <= '9') {
flags.Precision *= 10;
flags.Precision += *p++ - '0';
}

View file

@ -28,7 +28,6 @@
#define _EOF_ MSVCRT_WEOF
#define _EOF_RET (short)MSVCRT_WEOF
#define _ISSPACE_(c) MSVCRT_iswspace(c)
#define _ISDIGIT_(c) MSVCRT_iswdigit(c)
#define _WIDE2SUPPORTED_(c) c /* No conversion needed (wide to wide) */
#define _CHAR2SUPPORTED_(c) c /* FIXME: convert char to wide char */
#define _CHAR2DIGIT_(c, base) wchar2digit((c), (base))
@ -37,8 +36,7 @@
#define _CHAR_ char
#define _EOF_ MSVCRT_EOF
#define _EOF_RET MSVCRT_EOF
#define _ISSPACE_(c) isspace(c)
#define _ISDIGIT_(c) isdigit(c)
#define _ISSPACE_(c) MSVCRT_isspace(c)
#define _WIDE2SUPPORTED_(c) c /* FIXME: convert wide char to char */
#define _CHAR2SUPPORTED_(c) c /* No conversion needed (char to char) */
#define _CHAR2DIGIT_(c, base) char2digit((c), (base))
@ -260,7 +258,7 @@ _FUNCTION_ {
/* read prefix (if any) */
while (!prefix_finished) {
/* look for width specification */
while (_ISDIGIT_(*format)) {
while (*format >= '0' && *format <= '9') {
width *= 10;
width += *format++ - '0';
}
@ -721,7 +719,6 @@ _FUNCTION_ {
#undef _EOF_
#undef _EOF_RET
#undef _ISSPACE_
#undef _ISDIGIT_
#undef _CHAR2SUPPORTED_
#undef _WIDE2SUPPORTED_
#undef _CHAR2DIGIT_

View file

@ -857,7 +857,7 @@ static BOOL demangle_datatype(struct parsed_symbol* sym, struct datatype_t* ct,
if (!get_modified_type(ct, sym, pmt_ref, in_args ? dt : 'P', in_args)) goto done;
break;
case 'P': /* Pointer */
if (isdigit(*sym->current))
if (MSVCRT_isdigit(*sym->current))
{
/* FIXME:
* P6 = Function pointer