summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2016-02-13 14:38:26 -0500
committerMike Blumenkrantz <zmike@osg.samsung.com>2016-02-13 14:38:26 -0500
commit8150643523176ff2bece967177ac56b21d1182a5 (patch)
tree2ddb95fe318c1274b05110fd6f27dda075381e13
parentda827e343b12711449aff09f25f34d3ac3ea6ad1 (diff)
downloadelementary-8150643523176ff2bece967177ac56b21d1182a5.tar.gz
genlist: bump item class version to 3 to fix abi breakage
when adding new methods to public interface structs (such as item class), the version must be bumped and checked in the new interface method calls in order to avoid breaking abi for previously-compiled apps ref 4c86a66f28876b68e92a90c8f741eed1130dd034
-rw-r--r--src/lib/elm_gen.h2
-rw-r--r--src/lib/elm_genlist.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/elm_gen.h b/src/lib/elm_gen.h
index 08d6eb4d3..9f2bef737 100644
--- a/src/lib/elm_gen.h
+++ b/src/lib/elm_gen.h
@@ -55,5 +55,5 @@ typedef Eina_Bool (*Elm_Gen_Item_Filter_Get_Cb)(void *data,
*/
typedef Evas_Object *(*Elm_Gen_Item_Reusable_Content_Get_Cb)(void *data, Evas_Object *obj, const char *part, Evas_Object *old); /**< Cache Pop class function for gen item classes. */
-#define ELM_GEN_ITEM_CLASS_VERSION 2
+#define ELM_GEN_ITEM_CLASS_VERSION 3
#define ELM_GEN_ITEM_CLASS_HEADER ELM_GEN_ITEM_CLASS_VERSION, 0, 0
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index 742c38502..cc2fdcfe7 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -365,7 +365,8 @@ _item_content_realize(Elm_Gen_Item *it,
EINA_LIST_FREE(*contents, content)
evas_object_del(content);
}
- if (it->itc->func.content_get || it->itc->func.reusable_content_get)
+ if (it->itc->func.content_get ||
+ ((it->itc->version >= 3) && it->itc->func.reusable_content_get))
{
Eina_List *source;
const char *key;