Module: wine Branch: master Commit: 83aca41eb5cfcf0a0cbf94859d2bca33a8a45a0b URL: http://source.winehq.org/git/wine.git/?a=commit;h=83aca41eb5cfcf0a0cbf94859d...
Author: Akihiro Sagawa sagawa.aki@gmail.com Date: Wed May 17 00:00:13 2017 +0900
mscoree: Avoid using isdigit() for WCHARs.
Found with Coccinelle.
Signed-off-by: Akihiro Sagawa sagawa.aki@gmail.com Signed-off-by: Vincent Povirk vincent@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/mscoree/metahost.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/dlls/mscoree/metahost.c b/dlls/mscoree/metahost.c index 30b9739..a99880d 100644 --- a/dlls/mscoree/metahost.c +++ b/dlls/mscoree/metahost.c @@ -818,6 +818,11 @@ static ULONG WINAPI CLRMetaHost_Release(ICLRMetaHost* iface) return 1; }
+static inline BOOL isDigit(WCHAR c) +{ + return c >= '0' && c <= '9'; +} + static BOOL parse_runtime_version(LPCWSTR version, DWORD *major, DWORD *minor, DWORD *build) { *major = 0; @@ -827,28 +832,28 @@ static BOOL parse_runtime_version(LPCWSTR version, DWORD *major, DWORD *minor, D if (version[0] == 'v' || version[0] == 'V') { version++; - if (!isdigit(*version)) + if (!isDigit(*version)) return FALSE;
- while (isdigit(*version)) + while (isDigit(*version)) *major = *major * 10 + (*version++ - '0');
if (*version == 0) return TRUE;
- if (*version++ != '.' || !isdigit(*version)) + if (*version++ != '.' || !isDigit(*version)) return FALSE;
- while (isdigit(*version)) + while (isDigit(*version)) *minor = *minor * 10 + (*version++ - '0');
if (*version == 0) return TRUE;
- if (*version++ != '.' || !isdigit(*version)) + if (*version++ != '.' || !isDigit(*version)) return FALSE;
- while (isdigit(*version)) + while (isDigit(*version)) *build = *build * 10 + (*version++ - '0');
return *version == 0;