From 397d7a248c84a7a1a57592fe3e6f70a13cb6c348 Mon Sep 17 00:00:00 2001 From: Qian Hong Date: Fri, 3 Oct 2014 05:09:29 +0800 Subject: [PATCH 4/5] jscript: Ignore BOM mark in str_to_number. To: wine-patches Reply-To: wine-devel Cc: Qian Hong --- dlls/jscript/jsutils.c | 6 +++--- dlls/jscript/tests/run.c | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/dlls/jscript/jsutils.c b/dlls/jscript/jsutils.c index a44168d..336d7c8 100644 --- a/dlls/jscript/jsutils.c +++ b/dlls/jscript/jsutils.c @@ -488,7 +488,7 @@ static HRESULT str_to_number(jsstr_t *str, double *ret) if(!ptr) return E_OUTOFMEMORY; - while(isspaceW(*ptr)) + while(is_jsspaceW(*ptr)) ptr++; if(*ptr == '-') { @@ -500,7 +500,7 @@ static HRESULT str_to_number(jsstr_t *str, double *ret) if(!strncmpW(ptr, infinityW, sizeof(infinityW)/sizeof(WCHAR))) { ptr += sizeof(infinityW)/sizeof(WCHAR); - while(*ptr && isspaceW(*ptr)) + while(*ptr && is_jsspaceW(*ptr)) ptr++; if(*ptr) @@ -554,7 +554,7 @@ static HRESULT str_to_number(jsstr_t *str, double *ret) } } - while(isspaceW(*ptr)) + while(is_jsspaceW(*ptr)) ptr++; if(*ptr) { diff --git a/dlls/jscript/tests/run.c b/dlls/jscript/tests/run.c index 446adf4..da60afa 100644 --- a/dlls/jscript/tests/run.c +++ b/dlls/jscript/tests/run.c @@ -2000,6 +2000,20 @@ static const struct spaces_test spaces_tests[] = { {"var a = parseInt(\" 3.14 \");\ ok(a == 3, \"returned \"+a);\ reportSuccess();", S_OK}, + {"ok(!isNaN(\" 1 \"), \"!isNaN returned false\");\ + reportSuccess();", S_OK}, + {"ok(!isNaN(\" \"), \"!isNaN returned false\");\ + reportSuccess();", S_OK}, + {"ok(isFinite(\" 1 \"), \"isFinite returned false\");\ + reportSuccess();", S_OK}, + {"ok(isFinite(\" \"), \"isFinite returned false\");\ + reportSuccess();", S_OK}, + {"var a = new Number(\" 3.14 \");\ + ok(a == 3.14, \"Number returned \"+a);\ + reportSuccess();", S_OK}, + {"var a = Math.abs(\" -3.14 \");\ + ok(a == 3.14, \"Number returned \"+a);\ + reportSuccess();", S_OK}, {{0}} }; -- 1.9.1