Rob Shearman : oleaut32: Set the number of locks held on the safe arrays in the safe array tests to zero before destroying them , otherwise the operation will fail and leak memory.
Alexandre Julliard
julliard at winehq.org
Fri Dec 7 11:02:00 CST 2007
Module: wine
Branch: master
Commit: 2a9168e586e067a1c7a63efb3472f6e5194d6912
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2a9168e586e067a1c7a63efb3472f6e5194d6912
Author: Rob Shearman <rob at codeweavers.com>
Date: Fri Dec 7 14:14:33 2007 +0000
oleaut32: Set the number of locks held on the safe arrays in the safe array tests to zero before destroying them, otherwise the operation will fail and leak memory.
---
dlls/oleaut32/tests/usrmarshal.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/dlls/oleaut32/tests/usrmarshal.c b/dlls/oleaut32/tests/usrmarshal.c
index 3139442..20fc2f8 100644
--- a/dlls/oleaut32/tests/usrmarshal.c
+++ b/dlls/oleaut32/tests/usrmarshal.c
@@ -208,6 +208,7 @@ static void test_marshal_LPSAFEARRAY(void)
LPSAFEARRAY_UserFree(&umcb.Flags, &lpsa2);
}
HeapFree(GetProcessHeap(), 0, buffer);
+ lpsa->cLocks = 0;
SafeArrayDestroy(lpsa);
/* test NULL safe array */
@@ -244,6 +245,7 @@ static void test_marshal_LPSAFEARRAY(void)
check_safearray(buffer, lpsa);
HeapFree(GetProcessHeap(), 0, buffer);
+ lpsa->cLocks = 0;
SafeArrayDestroy(lpsa);
/* VARTYPE-less arrays can be marshaled if cbElements is 1,2,4 or 8 as type SF_In */
@@ -1125,6 +1127,7 @@ static void test_marshal_VARIANT(void)
VARIANT_UserFree(&umcb.Flags, &v2);
}
HeapFree(GetProcessHeap(), 0, buffer);
+ lpsa->cLocks = 0;
SafeArrayDestroy(lpsa);
/*** VARIANT BYREF ***/
More information about the wine-cvs
mailing list