do not remove sub-evases from ecore_evases list.
authorbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 16 Jul 2009 21:39:48 +0000 (21:39 +0000)
committerbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 16 Jul 2009 21:39:48 +0000 (21:39 +0000)
they are not there, they're listed inside sub_ecore_evas of parent instead.

git-svn-id: http://svn.enlightenment.org/svn/e/trunk/ecore@41368 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore_evas/ecore_evas_buffer.c

index 58f3dd8..b3f7da0 100644 (file)
@@ -29,8 +29,6 @@ _ecore_evas_buffer_init(void)
 static void
 _ecore_evas_buffer_free(Ecore_Evas *ee)
 {
-   ecore_evases = (Ecore_Evas *) eina_inlist_remove(EINA_INLIST_GET(ecore_evases), EINA_INLIST_GET(ee));
-   _ecore_evas_buffer_shutdown();
    if (ee->engine.buffer.image)
      {
        Ecore_Evas *ee2;
@@ -40,7 +38,12 @@ _ecore_evas_buffer_free(Ecore_Evas *ee)
        ee2->sub_ecore_evas = eina_list_remove(ee2->sub_ecore_evas, ee);
      }
    else
-     free(ee->engine.buffer.pixels);
+     {
+       ecore_evases = (Ecore_Evas *) eina_inlist_remove(EINA_INLIST_GET(ecore_evases), EINA_INLIST_GET(ee));
+
+       free(ee->engine.buffer.pixels);
+     }
+   _ecore_evas_buffer_shutdown();
 }
 
 static void