mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-14 21:57:18 +00:00
msvcrt: Use the msvcrt ctype functions internally.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
871d9863bc
commit
b7fe06d0fa
|
@ -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 == '_'));
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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';
|
||||
}
|
||||
|
|
|
@ -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_
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue