From: Eric Pouech <epouech@codeweavers.com> Signed-off-by: Eric Pouech <epouech@codeweavers.com> --- dlls/propsys/propvar.c | 19 +++++++++++++++++++ dlls/propsys/tests/propsys.c | 5 ----- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/dlls/propsys/propvar.c b/dlls/propsys/propvar.c index 7a1ee5fd876..821c43d39ed 100644 --- a/dlls/propsys/propvar.c +++ b/dlls/propsys/propvar.c @@ -146,6 +146,12 @@ static HRESULT PROPVAR_ConvertNumber(REFPROPVARIANT pv, int dest_bits, src_signed = *res < 0; break; } + case VT_R4: + { + src_signed = TRUE; + *res = pv->fltVal; + break; + } case VT_R8: { src_signed = TRUE; @@ -717,6 +723,19 @@ HRESULT WINAPI PropVariantChangeType(PROPVARIANT *ppropvarDest, REFPROPVARIANT p } return hr; } + + case VT_R4: + { + double res; + hr = PropVariantToDouble(propvarSrc, &res); + if (SUCCEEDED(hr)) + { + ppropvarDest->vt = VT_R4; + ppropvarDest->fltVal = (float)res; + } + return hr; + } + case VT_R8: { double res; diff --git a/dlls/propsys/tests/propsys.c b/dlls/propsys/tests/propsys.c index a60dcb4b45a..d6faee19add 100644 --- a/dlls/propsys/tests/propsys.c +++ b/dlls/propsys/tests/propsys.c @@ -896,7 +896,6 @@ static void test_PropVariantCompareEx(void) /* VT_R4/VT_R8 */ res = PropVariantCompareEx(&r4_0, &r8_0, 0, 0); - todo_wine ok(res == 0, "res=%i\n", res); res = PropVariantCompareEx(&r4_0, &r4_0, 0, 0); @@ -986,25 +985,21 @@ static void test_PropVariantCompareEx(void) ok(res == 0, "res=%i\n", res); res = PropVariantCompareEx(&r4_2, &i4_largeneg, 0, 0); - todo_wine ok(res == 1, "res=%i\n", res); res = PropVariantCompareEx(&r4_2, &i4_large, 0, 0); ok(res == -1, "res=%i\n", res); res = PropVariantCompareEx(&i4_large, &r4_2, 0, 0); - todo_wine ok(res == 1, "res=%i\n", res); res = PropVariantCompareEx(&i4_largeneg, &r4_2, 0, 0); ok(res == -1, "res=%i\n", res); res = PropVariantCompareEx(&r4_21, &i2_2, 0, 0); - todo_wine ok(res == 1, "res=%i\n", res); res = PropVariantCompareEx(&i2_2, &r4_21, 0, 0); - todo_wine ok(res == 0, "res=%i\n", res); SysFreeString(str_2.bstrVal); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10196