oleaut32:VarMod - Updates error codes for VarMod

Benjamin Arai me at benjaminarai.com
Tue Jul 18 13:14:48 CDT 2006


Changelog:
 - Fixes incorrect "expected" error codes for VarMod conformance
   test
 - Updates VarMod to output correct error codes
 - Tests pass on Windows XP SP1, DCOM98, and Wine.

Benjamin Arai
me at benjaminarai.com

-------------- next part --------------

---
 dlls/oleaut32/tests/vartest.c |    4 ++--
 dlls/oleaut32/variant.c       |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/oleaut32/tests/vartest.c b/dlls/oleaut32/tests/vartest.c
index 642bd94..addc01c 100644
--- a/dlls/oleaut32/tests/vartest.c
+++ b/dlls/oleaut32/tests/vartest.c
@@ -2456,7 +2456,7 @@ static void test_VarMod(void)
 	hexpected = DISP_E_TYPEMISMATCH;
       } else if((l == VT_NULL) && (r == VT_DECIMAL))
       {
-	hexpected = DISP_E_OVERFLOW;
+	hexpected = E_INVALIDARG;
       } else if((l == VT_UNKNOWN) || ((r == VT_UNKNOWN) && lFound && lValid))
       {
 	hexpected = DISP_E_TYPEMISMATCH;
@@ -2465,7 +2465,7 @@ static void test_VarMod(void)
 	hexpected = S_OK;
       } else if((l == VT_DECIMAL) || ((r == VT_DECIMAL) && lFound && lValid))
       {
-	hexpected = DISP_E_OVERFLOW;
+	hexpected = E_INVALIDARG;
       } else if(l == VT_RECORD)
       {
 	hexpected = DISP_E_TYPEMISMATCH;
diff --git a/dlls/oleaut32/variant.c b/dlls/oleaut32/variant.c
index 2de8550..3916b1c 100644
--- a/dlls/oleaut32/variant.c
+++ b/dlls/oleaut32/variant.c
@@ -4600,7 +4600,7 @@ HRESULT WINAPI VarMod(LPVARIANT left, LP
       return DISP_E_TYPEMISMATCH;
     case VT_DECIMAL:
       V_VT(result) = VT_EMPTY;
-      return DISP_E_OVERFLOW;
+      return E_INVALIDARG;
     case VT_ERROR:
       return DISP_E_TYPEMISMATCH;
     case VT_RECORD:
@@ -4685,7 +4685,7 @@ HRESULT WINAPI VarMod(LPVARIANT left, LP
       } else
       {
 	V_VT(result) = VT_EMPTY;
-        return DISP_E_OVERFLOW;
+        return E_INVALIDARG;
       }
     case VT_ERROR:
       return DISP_E_TYPEMISMATCH;
-- 
1.4.0



More information about the wine-patches mailing list