Andrew Talbot : comctl32: Dangling pointers fix.
Alexandre Julliard
julliard at winehq.org
Mon Apr 28 08:01:37 CDT 2008
Module: wine
Branch: master
Commit: 2db311a843e2830105c174190d1cd6b5a39a7746
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2db311a843e2830105c174190d1cd6b5a39a7746
Author: Andrew Talbot <andrew.talbot at talbotville.com>
Date: Sun Apr 27 14:17:30 2008 +0100
comctl32: Dangling pointers fix.
---
dlls/comctl32/comboex.c | 4 +++-
dlls/comctl32/trackbar.c | 3 ++-
dlls/comctl32/treeview.c | 2 +-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/dlls/comctl32/comboex.c b/dlls/comctl32/comboex.c
index e79831d..cfcfed8 100644
--- a/dlls/comctl32/comboex.c
+++ b/dlls/comctl32/comboex.c
@@ -1600,9 +1600,11 @@ static LRESULT COMBOEX_Destroy (COMBOEX_INFO *infoPtr)
if (infoPtr->defaultFont)
DeleteObject (infoPtr->defaultFont);
+ SetWindowLongPtrW (infoPtr->hwndSelf, 0, 0);
+
/* free comboex info data */
Free (infoPtr);
- SetWindowLongPtrW (infoPtr->hwndSelf, 0, 0);
+
return 0;
}
diff --git a/dlls/comctl32/trackbar.c b/dlls/comctl32/trackbar.c
index e81d55f..a25f81e 100644
--- a/dlls/comctl32/trackbar.c
+++ b/dlls/comctl32/trackbar.c
@@ -1452,9 +1452,10 @@ TRACKBAR_Destroy (TRACKBAR_INFO *infoPtr)
if (infoPtr->hwndToolTip)
DestroyWindow (infoPtr->hwndToolTip);
- Free (infoPtr);
SetWindowLongPtrW (infoPtr->hwndSelf, 0, 0);
CloseThemeData (GetWindowTheme (infoPtr->hwndSelf));
+ Free (infoPtr);
+
return 0;
}
diff --git a/dlls/comctl32/treeview.c b/dlls/comctl32/treeview.c
index 2b71a3b..fb67c24 100644
--- a/dlls/comctl32/treeview.c
+++ b/dlls/comctl32/treeview.c
@@ -1019,7 +1019,6 @@ static void
TREEVIEW_FreeItem(TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
{
DPA_DeletePtr(infoPtr->items, DPA_GetPtrIndex(infoPtr->items, item));
- Free(item);
if (infoPtr->selectedItem == item)
infoPtr->selectedItem = NULL;
if (infoPtr->hotItem == item)
@@ -1032,6 +1031,7 @@ TREEVIEW_FreeItem(TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *item)
infoPtr->dropItem = NULL;
if (infoPtr->insertMarkItem == item)
infoPtr->insertMarkItem = NULL;
+ Free(item);
}
More information about the wine-cvs
mailing list