raster pushed a commit to branch efl-1.24. http://git.enlightenment.org/core/efl.git/commit/?id=4f448d6339f384b4b37ca6e98f508f881fe315d8
commit 4f448d6339f384b4b37ca6e98f508f881fe315d8 Author: Carsten Haitzler (Rasterman) <[email protected]> Date: Wed Jul 15 12:22:22 2020 +0100 edje - fix edje_cc mis-re-iding images in image sets wanr of unused images so it's properly fixed too... always warn to stdout so devs know to cleanup their theme. by not removing image sets this fixes the mis-id'ing too. @fix --- src/bin/edje/edje_cc_out.c | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/src/bin/edje/edje_cc_out.c b/src/bin/edje/edje_cc_out.c index 64f6cec29d..9e0b8bf354 100644 --- a/src/bin/edje/edje_cc_out.c +++ b/src/bin/edje/edje_cc_out.c @@ -3509,7 +3509,7 @@ _data_image_h_size_compare_cb(const void *data1, const void *data2) } static void -_data_image_sets_size_set() +_data_image_sets_size_set(void) { Evas *evas; Edje_Image_Directory_Set *set; @@ -4029,11 +4029,12 @@ free_group: if (de->entry && eina_hash_find(images_in_use, de->entry)) continue; + printf("Warning: Image '%s' not used\n", de->entry); INF("Image '%s' in resource 'edje/image/%i' will not be included as it is unused.", de->entry, de->id); - /* so as not to write the unused images, moved last image in the - list to unused image position and check it */ + // so as not to write the unused images, moved last image in the + // list to unused image position and check it free((void *)de->entry); de->entry = NULL; de_last = edje_file->image_dir->entries + edje_file->image_dir->entries_count - 1; @@ -4042,8 +4043,8 @@ free_group: images_unused_list = eina_list_append(images_unused_list, iui); iui->new_id = i; de_last->id = i; - memcpy(de, de_last, sizeof (Edje_Image_Directory_Entry)); - --i; /* need to check a moved image on this index */ + memcpy(de, de_last, sizeof(Edje_Image_Directory_Entry)); + --i; // need to check a moved image on this index edje_file->image_dir->entries_count--; img = realloc(edje_file->image_dir->entries, sizeof (Edje_Image_Directory_Entry) * edje_file->image_dir->entries_count); @@ -4057,6 +4058,17 @@ free_group: if (set->name && eina_hash_find(images_in_use, set->name)) continue; + printf("Warning: Image set '%s' not used\n", set->name); + EINA_LIST_FOREACH(set->entries, l, set_e) + { + printf(" Contains '%s' size %ix%i -> %ix%i\n", + set_e->name, + set_e->size.min.w, set_e->size.min.h, + set_e->size.max.w, set_e->size.max.h); + } +/* No need to redo id's - we will warn of unused images - fix in src + * Also .. this is broken and messes up id's ... so easyer - complain + * to develoepr to clean up the theme... INF("Set '%s' will not be included as it is unused.", set->name); free((void *)set->name); @@ -4078,6 +4090,7 @@ free_group: set_realloc = realloc(edje_file->image_dir->sets, sizeof(Edje_Image_Directory_Set) * edje_file->image_dir->sets_count); edje_file->image_dir->sets = set_realloc; + */ } /* update image id in parts */ --
