vg_load_svg: Fix missing loader.gradients update 26/243926/1
authorJunsuChoi <jsuya.choi@samsung.com>
Fri, 11 Sep 2020 02:48:30 +0000 (11:48 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Fri, 11 Sep 2020 07:47:55 +0000 (16:47 +0900)
Summary:
When both <defs> and <svg> gradients are declared,
the update of gradient declared in is omitted.
Therefore, this patch fixes any missing gradient updates.

Test Plan: N/A

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: #reviewers, #committers, cedric, herb, kimcinoo

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12138

Change-Id: I82cb746931484041cc0662a5ad770dce1efcc1d2

src/modules/evas/vg_loaders/svg/evas_vg_load_svg.c

index d4ea286..ea19f2d 100644 (file)
@@ -2466,14 +2466,11 @@ evas_vg_load_file_open_svg(Eina_File *file,
         defs = loader.doc->node.doc.defs;
         if (defs)
           _update_gradient(loader.doc, defs->node.defs.gradients);
-        else
+        if (loader.gradients)
           {
-             if (loader.gradients)
-               {
-                  Eina_List* gradient_list = loader.gradients;
-                  _update_gradient(loader.doc, gradient_list);
-                  eina_list_free(gradient_list);
-               }
+             Eina_List* gradient_list = loader.gradients;
+             _update_gradient(loader.doc, gradient_list);
+             eina_list_free(gradient_list);
           }
 
         *error = EVAS_LOAD_ERROR_NONE;