From 53040deefd78575dfa1ce2bdc989038ce6b7a07d Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Thu, 25 Sep 2008 00:50:49 +0200 Subject: [PATCH] jscript: Added VT_R8 to string conversion implementation. --- dlls/jscript/jsutils.c | 12 ++++++++++++ dlls/jscript/tests/lang.js | 2 ++ 2 files changed, 14 insertions(+) diff --git a/dlls/jscript/jsutils.c b/dlls/jscript/jsutils.c index cd7fa570b5..422076ecfc 100644 --- a/dlls/jscript/jsutils.c +++ b/dlls/jscript/jsutils.c @@ -441,6 +441,18 @@ HRESULT to_string(script_ctx_t *ctx, VARIANT *v, jsexcept_t *ei, BSTR *str) case VT_I4: *str = int_to_bstr(V_I4(v)); break; + case VT_R8: { + VARIANT strv; + HRESULT hres; + + V_VT(&strv) = VT_EMPTY; + hres = VariantChangeType(&strv, v, 0, VT_BSTR); + if(FAILED(hres)) + return hres; + + *str = V_BSTR(&strv); + return S_OK; + } case VT_BSTR: *str = SysAllocString(V_BSTR(v)); break; diff --git a/dlls/jscript/tests/lang.js b/dlls/jscript/tests/lang.js index dbe714d9fb..63c8bc0d9b 100644 --- a/dlls/jscript/tests/lang.js +++ b/dlls/jscript/tests/lang.js @@ -366,6 +366,8 @@ ok("" + null === "null", "\"\" + null !== \"null\""); ok("" + undefined === "undefined", "\"\" + undefined !== \"undefined\""); ok("" + true === "true", "\"\" + true !== \"true\""); ok("" + false === "false", "\"\" + false !== \"false\""); +ok("" + 0.5 === "0.5", "'' + 0.5 = " + 0.5); +ok("" + (-0.5432) === "-0.5432", "'' + (-0.5432) = " + (-0.5432)); ok(1 < 3.4, "1 < 3.4 failed"); ok(!(3.4 < 1), "3.4 < 1"); -- 2.32.0.93.g670b81a890