efl: fix memory leak in edje and evas.
authorGodly T.Alias <godlytalias@yahoo.co.in>
Thu, 16 Feb 2017 00:29:05 +0000 (16:29 -0800)
committerCedric BAIL <cedric@osg.samsung.com>
Thu, 16 Feb 2017 00:29:07 +0000 (16:29 -0800)
Summary:
Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>
Signed-off-by: Ayush Srivastava <ayush.sriv@samsung.com>
Test Plan: EFL apps

Reviewers: cedric, raster

Subscribers: rajeshps, ayush.sriv, jpeg, prince.dubey

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
src/lib/edje/edje_load.c
src/modules/evas/engines/gl_common/evas_gl_shader.c

index aa9c14c..3a0b8fd 100644 (file)
@@ -1943,6 +1943,12 @@ _edje_file_del(Edje *ed)
                   free(rp->typedata.text);
                   rp->typedata.text = NULL;
                }
+             else if ((rp->type == EDJE_PART_TYPE_VECTOR) &&
+                      (rp->typedata.vector))
+               {
+                  free(rp->typedata.vector);
+                  rp->typedata.vector = NULL;
+               }
              else if ((rp->type == EDJE_RP_TYPE_SWALLOW) &&
                       (rp->typedata.swallow))
                {
index d80d779..cc22155 100644 (file)
@@ -675,6 +675,7 @@ evas_gl_common_shaders_flush(Evas_GL_Shared *shared)
                to_delete = eina_list_append(to_delete, p);
           }
 
+        eina_iterator_free(it);
         EINA_LIST_FREE(to_delete, p)
           eina_hash_del(shared->shaders_hash, &p->flags, p);
      }