Juan Lang : oleaut32: Implement VarDecFix.
Module: wine Branch: master Commit: 48d1f9fba1ffcf610cb3233d8322765937f57f5b URL: http://source.winehq.org/git/wine.git/?a=commit;h=48d1f9fba1ffcf610cb3233d83... Author: Juan Lang <juan.lang(a)gmail.com> Date: Wed Feb 18 09:05:51 2009 -0800 oleaut32: Implement VarDecFix. --- dlls/oleaut32/vartype.c | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-) diff --git a/dlls/oleaut32/vartype.c b/dlls/oleaut32/vartype.c index 3e435ab..0b0ed28 100644 --- a/dlls/oleaut32/vartype.c +++ b/dlls/oleaut32/vartype.c @@ -5662,6 +5662,9 @@ HRESULT WINAPI VarDecAbs(const DECIMAL* pDecIn, DECIMAL* pDecOut) */ HRESULT WINAPI VarDecFix(const DECIMAL* pDecIn, DECIMAL* pDecOut) { + double dbl; + HRESULT hr; + if (DEC_SIGN(pDecIn) & ~DECIMAL_NEG) return E_INVALIDARG; @@ -5671,8 +5674,13 @@ HRESULT WINAPI VarDecFix(const DECIMAL* pDecIn, DECIMAL* pDecOut) return S_OK; } - FIXME("semi-stub!\n"); - return DISP_E_OVERFLOW; + hr = VarR8FromDec(pDecIn, &dbl); + if (SUCCEEDED(hr)) { + LONGLONG rounded = dbl; + + hr = VarDecFromI8(rounded, pDecOut); + } + return hr; } /************************************************************************
participants (1)
-
Alexandre Julliard