Hans Leidekker : usp10: Fix some more memory leaks.
Alexandre Julliard
julliard at winehq.org
Fri Nov 9 07:44:12 CST 2007
Module: wine
Branch: master
Commit: 106dbd5617197a0e4d52ea373eaa5c6d0df7c2b5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=106dbd5617197a0e4d52ea373eaa5c6d0df7c2b5
Author: Hans Leidekker <hans at it.vu.nl>
Date: Thu Nov 8 19:18:30 2007 +0100
usp10: Fix some more memory leaks.
---
dlls/usp10/tests/usp10.c | 6 +++++-
dlls/usp10/usp10.c | 2 ++
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/dlls/usp10/tests/usp10.c b/dlls/usp10/tests/usp10.c
index 73615de..158f201 100644
--- a/dlls/usp10/tests/usp10.c
+++ b/dlls/usp10/tests/usp10.c
@@ -640,6 +640,7 @@ static void test_ScriptString(HDC hdc)
ReqWidth, &Control, &State, Dx, &Tabdef,
&InClass, &ssa);
ok(hr == S_OK, "ScriptStringAnalyse should return S_OK not %08x\n", hr);
+ ScriptStringFree(&ssa);
/* test makes sure that a call with a valid pssa still works */
hr = ScriptStringAnalyse( hdc, teststr, len, Glyphs, Charset, Flags,
@@ -844,8 +845,9 @@ static void test_ScriptCacheGetHeight(HDC hdc)
hr = ScriptCacheGetHeight(hdc, &sc, &height);
ok(hr == S_OK, "expected S_OK, got 0x%08x\n", hr);
-
ok(height > 0, "expected height > 0\n");
+
+ ScriptFreeCache(&sc);
}
static void test_ScriptGetGlyphABCWidth(HDC hdc)
@@ -867,6 +869,8 @@ static void test_ScriptGetGlyphABCWidth(HDC hdc)
hr = ScriptGetGlyphABCWidth(hdc, &sc, 'a', &abc);
ok(hr == S_OK, "expected S_OK, got 0x%08x\n", hr);
+
+ ScriptFreeCache(&sc);
}
static void test_ScriptLayout(void)
diff --git a/dlls/usp10/usp10.c b/dlls/usp10/usp10.c
index 3e1258d..576b056 100644
--- a/dlls/usp10/usp10.c
+++ b/dlls/usp10/usp10.c
@@ -660,6 +660,7 @@ error:
usp_free(analysis->glyphs);
usp_free(analysis->logattrs);
usp_free(analysis->pItem);
+ usp_free(analysis->sc);
usp_free(analysis);
return hr;
}
@@ -887,6 +888,7 @@ HRESULT WINAPI ScriptStringFree(SCRIPT_STRING_ANALYSIS *pssa)
usp_free(analysis->pItem);
usp_free(analysis->logattrs);
usp_free(analysis->sz);
+ usp_free(analysis->sc);
usp_free(analysis);
if (invalid) return E_INVALIDARG;
More information about the wine-cvs
mailing list