Nikolay Sivov : comctl32/treeview: Free items pointer array and root item on control destruction.

Alexandre Julliard julliard at winehq.org
Mon Dec 7 10:26:14 CST 2009


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

Author: Nikolay Sivov <bunglehead at gmail.com>
Date:   Sat Dec  5 20:39:03 2009 +0300

comctl32/treeview: Free items pointer array and root item on control destruction.

Two issues here: item pointers array wasn't freed, root item data wasn't freed.
Found by Valgrind.

---

 dlls/comctl32/treeview.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/dlls/comctl32/treeview.c b/dlls/comctl32/treeview.c
index d762a79..7cabef6 100644
--- a/dlls/comctl32/treeview.c
+++ b/dlls/comctl32/treeview.c
@@ -5064,7 +5064,11 @@ TREEVIEW_Destroy(TREEVIEW_INFO *infoPtr)
 {
     TRACE("\n");
 
+    /* free item data */
     TREEVIEW_RemoveTree(infoPtr);
+    /* root isn't freed with other items */
+    TREEVIEW_FreeItem(infoPtr, infoPtr->root);
+    DPA_Destroy(infoPtr->items);
 
     /* tool tip is automatically destroyed: we are its owner */
 




More information about the wine-cvs mailing list