Module: wine Branch: master Commit: f192f2f1a13190378cbecc33dcf06ff3fd637eb0 URL: https://source.winehq.org/git/wine.git/?a=commit;h=f192f2f1a13190378cbecc33d...
Author: Jacek Caban jacek@codeweavers.com Date: Thu Apr 11 16:44:06 2019 +0200
jscript: Support type conversion to VT_UI2.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/jscript/jsutils.c | 8 ++++++++ dlls/jscript/tests/caller.c | 3 +++ 2 files changed, 11 insertions(+)
diff --git a/dlls/jscript/jsutils.c b/dlls/jscript/jsutils.c index b653e52..f252824 100644 --- a/dlls/jscript/jsutils.c +++ b/dlls/jscript/jsutils.c @@ -894,6 +894,14 @@ HRESULT variant_change_type(script_ctx_t *ctx, VARIANT *dst, VARIANT *src, VARTY } break; } + case VT_UI2: { + UINT32 i; + + hres = to_uint32(ctx, val, &i); + if(SUCCEEDED(hres)) + V_UI2(dst) = i; + break; + } case VT_R8: { double n; hres = to_number(ctx, val, &n); diff --git a/dlls/jscript/tests/caller.c b/dlls/jscript/tests/caller.c index f09ad90..dc97fb7 100644 --- a/dlls/jscript/tests/caller.c +++ b/dlls/jscript/tests/caller.c @@ -136,6 +136,9 @@ static void test_change_type(IVariantChangeType *change_type, VARIANT *src, cons call_change_type(change_type, &v, src, VT_I4); ok(V_I4(&v) == ex->int_result, "V_I4(v) = %d, expected %d\n", V_I4(&v), ex->int_result);
+ call_change_type(change_type, &v, src, VT_UI2); + ok(V_UI2(&v) == (UINT16)ex->int_result, "V_UI2(v) = %u, expected %u\n", V_UI2(&v), (UINT16)ex->int_result); + call_change_type(change_type, &v, src, VT_BSTR); ok(!strcmp_wa(V_BSTR(&v), ex->str_result), "V_BSTR(v) = %s, expected %s\n", wine_dbgstr_w(V_BSTR(&v)), ex->str_result); VariantClear(&v);