From 6fd05023424fd292bdce98bb22b0de04c81a3682 Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Tue, 28 Jan 2020 18:04:05 +0900 Subject: [PATCH] canvas vector: fix incorrect caching hit. animated vector(lottie) caches current playing resource data, for resuing if it's possible, but it must take care of the drawing size. Previous logic missed that part, fixed it. --- src/lib/evas/vg/evas_vg_cache.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/lib/evas/vg/evas_vg_cache.c b/src/lib/evas/vg/evas_vg_cache.c index 8b748ca5ee..e9990107ee 100644 --- a/src/lib/evas/vg/evas_vg_cache.c +++ b/src/lib/evas/vg/evas_vg_cache.c @@ -473,9 +473,13 @@ evas_cache_vg_tree_get(Vg_Cache_Entry *vg_entry, unsigned int frame_num) //No need to update. if (vfd->anim_data) { - if (vg_entry->root && - vfd->anim_data->frame_num == frame_num) - return vg_entry->root; + if ((vg_entry->w == vfd->view_box.w) && + (vg_entry->h == vfd->view_box.h)) + { + if (vg_entry->root && + vfd->anim_data->frame_num == frame_num) + return vg_entry->root; + } } else {