projects
/
platform
/
upstream
/
efl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e8c3346
)
fix item_class refcount bug when class updated
author
SangHyeon Lee
<sh10233.lee@samsung.com>
Fri, 1 Apr 2016 07:40:16 +0000
(16:40 +0900)
committer
SangHyeon Lee
<sh10233.lee@samsung.com>
Fri, 1 Apr 2016 07:40:16 +0000
(16:40 +0900)
src/lib/elementary/elm_genlist.c
patch
|
blob
|
history
diff --git
a/src/lib/elementary/elm_genlist.c
b/src/lib/elementary/elm_genlist.c
index
6a8e8a2
..
d5f5649
100644
(file)
--- a/
src/lib/elementary/elm_genlist.c
+++ b/
src/lib/elementary/elm_genlist.c
@@
-7070,7
+7070,15
@@
_elm_genlist_item_item_class_update(Eo *eo_it, Elm_Gen_Item *it,
{
ELM_GENLIST_ITEM_CHECK_OR_RETURN(it);
EINA_SAFETY_ON_NULL_RETURN(itc);
- it->itc = itc;
+
+ /* Decrease the orignal item class refcount to prevent memory leak */
+ if (it->itc != itc)
+ {
+ elm_genlist_item_class_unref((Elm_Genlist_Item_Class *)it->itc);
+ it->itc = itc;
+ elm_genlist_item_class_ref((Elm_Genlist_Item_Class *)it->itc);
+ }
+
if (!it->item->block) return;
it->item->nocache_once = EINA_TRUE;