Mikołaj Zalewski : comctl32: toolbar: Don' t leak the intoPtr->bitmaps during resizing and destruction.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Sep 20 05:33:42 CDT 2006
Module: wine
Branch: master
Commit: 5facde470e677022a31edbe124b39a3ac56b0d71
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=5facde470e677022a31edbe124b39a3ac56b0d71
Author: Mikołaj Zalewski <mikolaj at zalewski.pl>
Date: Mon Sep 18 12:01:49 2006 +0200
comctl32: toolbar: Don't leak the intoPtr->bitmaps during resizing and destruction.
---
dlls/comctl32/toolbar.c | 13 ++-----------
1 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/dlls/comctl32/toolbar.c b/dlls/comctl32/toolbar.c
index 6fb200c..9a04ecf 100644
--- a/dlls/comctl32/toolbar.c
+++ b/dlls/comctl32/toolbar.c
@@ -2751,17 +2751,7 @@ TOOLBAR_AddBitmap (HWND hwnd, WPARAM wPa
TRACE("Number of bitmap infos: %d\n", infoPtr->nNumBitmapInfos);
- if (infoPtr->nNumBitmapInfos == 0)
- {
- infoPtr->bitmaps = Alloc(sizeof(TBITMAP_INFO));
- }
- else
- {
- TBITMAP_INFO *oldBitmaps = infoPtr->bitmaps;
- infoPtr->bitmaps = Alloc((infoPtr->nNumBitmapInfos + 1) * sizeof(TBITMAP_INFO));
- memcpy(&infoPtr->bitmaps[0], &oldBitmaps[0], infoPtr->nNumBitmapInfos * sizeof(TBITMAP_INFO));
- }
-
+ infoPtr->bitmaps = ReAlloc(infoPtr->bitmaps, (infoPtr->nNumBitmapInfos + 1) * sizeof(TBITMAP_INFO));
infoPtr->bitmaps[infoPtr->nNumBitmapInfos].nButtons = nButtons;
infoPtr->bitmaps[infoPtr->nNumBitmapInfos].hInst = lpAddBmp->hInst;
infoPtr->bitmaps[infoPtr->nNumBitmapInfos].nID = lpAddBmp->nID;
@@ -5672,6 +5662,7 @@ TOOLBAR_Destroy (HWND hwnd, WPARAM wPara
/* delete temporary buffer for tooltip text */
Free (infoPtr->pszTooltipText);
+ Free (infoPtr->bitmaps); /* bitmaps list */
/* delete button data */
if (infoPtr->buttons)
More information about the wine-cvs
mailing list