From: Carsten Haitzler (Rasterman) Date: Wed, 15 Jul 2020 11:22:22 +0000 (+0100) Subject: edje - fix edje_cc mis-re-iding images in image sets X-Git-Tag: submit/tizen/20200719.223823~14 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1e69e875df16ae8b9fd5252beed6fc9f23bc0c54;p=platform%2Fupstream%2Fefl.git 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 --- diff --git a/src/bin/edje/edje_cc_out.c b/src/bin/edje/edje_cc_out.c index 2687470..c2db0c6 100644 --- a/src/bin/edje/edje_cc_out.c +++ b/src/bin/edje/edje_cc_out.c @@ -3538,7 +3538,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; @@ -4058,11 +4058,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; @@ -4071,8 +4072,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); @@ -4086,6 +4087,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); @@ -4107,6 +4119,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 */