diff options
author | Mike Blumenkrantz <zmike@osg.samsung.com> | 2016-02-13 14:38:26 -0500 |
---|---|---|
committer | Mike Blumenkrantz <zmike@osg.samsung.com> | 2016-02-13 14:38:26 -0500 |
commit | 8150643523176ff2bece967177ac56b21d1182a5 (patch) | |
tree | 2ddb95fe318c1274b05110fd6f27dda075381e13 | |
parent | da827e343b12711449aff09f25f34d3ac3ea6ad1 (diff) | |
download | elementary-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.h | 2 | ||||
-rw-r--r-- | src/lib/elm_genlist.c | 3 |
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; |