Dmitry Timoshkov : ole32/tests: Fix crashes in PropVariantClear tests under win2000 and XP.

Alexandre Julliard julliard at winehq.org
Thu Apr 17 13:43:24 CDT 2014


Module: wine
Branch: master
Commit: ccefbee73b5357e6e95ec5454c5261d8debaf0e8
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=ccefbee73b5357e6e95ec5454c5261d8debaf0e8

Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date:   Thu Apr 17 15:56:40 2014 +0900

ole32/tests: Fix crashes in PropVariantClear tests under win2000 and XP.

---

 dlls/ole32/tests/propvariant.c |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/dlls/ole32/tests/propvariant.c b/dlls/ole32/tests/propvariant.c
index d8d027f..bef0881 100644
--- a/dlls/ole32/tests/propvariant.c
+++ b/dlls/ole32/tests/propvariant.c
@@ -196,7 +196,10 @@ static void test_validtypes(void)
         VARTYPE vt;
 
         memset(&propvar, 0x55, sizeof(propvar));
-        U(propvar).pszVal = NULL;
+        if (i == VT_RECORD || i == VT_BLOB || i == VT_BLOB_OBJECT)
+            U(propvar).uhVal.QuadPart = 0;
+        else
+            U(propvar).pszVal = NULL;
         vt = propvar.vt = i;
         hr = PropVariantClear(&propvar);
         expect(hr, vt);
@@ -214,7 +217,8 @@ static void test_validtypes(void)
            i, U(propvar).uhVal.u.LowPart, U(propvar).uhVal.u.HighPart);
 
         memset(&propvar, 0x55, sizeof(propvar));
-        U(propvar).pszVal = NULL;
+        U(propvar).caub.cElems = 0;
+        U(propvar).caub.pElems = NULL;
         vt = propvar.vt = i | VT_VECTOR;
         hr = PropVariantClear(&propvar);
         expect(hr, vt);




More information about the wine-cvs mailing list