=?UTF-8?Q?Andr=C3=A9=20Hentschel=20?=: gdi32: Avoid memory leaks (coverity) .

Alexandre Julliard julliard at winehq.org
Mon Oct 29 13:52:50 CDT 2012


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

Author: André Hentschel <nerv at dawncrow.de>
Date:   Sun Oct 28 16:16:37 2012 +0100

gdi32: Avoid memory leaks (coverity).

---

 dlls/gdi32/bidi.c         |    3 +++
 dlls/gdi32/tests/bitmap.c |    3 ++-
 dlls/gdi32/tests/dib.c    |    1 +
 3 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/dlls/gdi32/bidi.c b/dlls/gdi32/bidi.c
index 0354996..00dce45 100644
--- a/dlls/gdi32/bidi.c
+++ b/dlls/gdi32/bidi.c
@@ -545,6 +545,9 @@ BOOL BIDI_Reorder(
                 WARN("Out of memory\n");
                 HeapFree(GetProcessHeap(), 0, chartype);
                 HeapFree(GetProcessHeap(), 0, levels);
+                HeapFree(GetProcessHeap(), 0, run_glyphs);
+                HeapFree(GetProcessHeap(), 0, pwLogClust);
+                HeapFree(GetProcessHeap(), 0, psva);
                 return FALSE;
             }
             res = ScriptItemize(lpString + done, i, maxItems, &Control, &State, pItems, &nItems);
diff --git a/dlls/gdi32/tests/bitmap.c b/dlls/gdi32/tests/bitmap.c
index 04c93c1..f72574a 100644
--- a/dlls/gdi32/tests/bitmap.c
+++ b/dlls/gdi32/tests/bitmap.c
@@ -3741,7 +3741,7 @@ static void test_GdiAlphaBlend(void)
     DeleteObject(bmpDst);
 
     ReleaseDC(NULL, hdcNull);
-
+    HeapFree(GetProcessHeap(), 0, bmi);
 }
 
 static void test_GdiGradientFill(void)
@@ -3854,6 +3854,7 @@ static void test_GdiGradientFill(void)
 
     DeleteDC( hdc );
     DeleteObject( bmp );
+    HeapFree(GetProcessHeap(), 0, bmi);
 }
 
 static void test_clipping(void)
diff --git a/dlls/gdi32/tests/dib.c b/dlls/gdi32/tests/dib.c
index f4ed8e1..18c1067 100644
--- a/dlls/gdi32/tests/dib.c
+++ b/dlls/gdi32/tests/dib.c
@@ -1308,6 +1308,7 @@ static void compare_hash_broken_todo(HDC hdc, BITMAPINFO *bmi, BYTE *bits, const
         if(current_sha1[i] == NULL)
         {
             ok(current_sha1[i] != NULL, "missing hash, got \"%s\",\n", hash);
+            HeapFree(GetProcessHeap(), 0, hash);
             return;
         }
     }




More information about the wine-cvs mailing list