Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
a061d3a0
Commit
a061d3a0
authored
Oct 22, 2009
by
Nikolay Sivov
Committed by
Alexandre Julliard
Oct 22, 2009
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
comctl32: Fix imagelist leak when switching LVS_EX_CHECKBOXES style.
parent
cd7cfd74
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
8 deletions
+13
-8
listview.c
dlls/comctl32/listview.c
+13
-8
No files found.
dlls/comctl32/listview.c
View file @
a061d3a0
...
...
@@ -7932,10 +7932,18 @@ static DWORD LISTVIEW_SetExtendedListViewStyle(LISTVIEW_INFO *infoPtr, DWORD dwM
LISTVIEW_SetItemState
(
infoPtr
,
-
1
,
&
item
);
himl
=
LISTVIEW_CreateCheckBoxIL
(
infoPtr
);
if
(
!
(
infoPtr
->
dwStyle
&
LVS_SHAREIMAGELISTS
))
ImageList_Destroy
(
infoPtr
->
himlState
);
}
LISTVIEW_SetImageList
(
infoPtr
,
LVSIL_STATE
,
himl
);
himl
=
LISTVIEW_SetImageList
(
infoPtr
,
LVSIL_STATE
,
himl
);
/* checkbox list replaces prevous custom list or... */
if
(((
infoPtr
->
dwLvExStyle
&
LVS_EX_CHECKBOXES
)
&&
!
(
infoPtr
->
dwStyle
&
LVS_SHAREIMAGELISTS
))
||
/* ...previous was checkbox list */
(
dwOldExStyle
&
LVS_EX_CHECKBOXES
))
ImageList_Destroy
(
himl
);
}
if
((
infoPtr
->
dwLvExStyle
^
dwOldExStyle
)
&
LVS_EX_HEADERDRAGDROP
)
{
DWORD
dwStyle
;
...
...
@@ -9664,12 +9672,9 @@ static LRESULT LISTVIEW_NCDestroy(LISTVIEW_INFO *infoPtr)
/* destroy image lists */
if
(
!
(
infoPtr
->
dwStyle
&
LVS_SHAREIMAGELISTS
))
{
if
(
infoPtr
->
himlNormal
)
ImageList_Destroy
(
infoPtr
->
himlNormal
);
if
(
infoPtr
->
himlSmall
)
ImageList_Destroy
(
infoPtr
->
himlSmall
);
if
(
infoPtr
->
himlState
)
ImageList_Destroy
(
infoPtr
->
himlState
);
ImageList_Destroy
(
infoPtr
->
himlNormal
);
ImageList_Destroy
(
infoPtr
->
himlSmall
);
ImageList_Destroy
(
infoPtr
->
himlState
);
}
/* destroy font, bkgnd brush */
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment