diff --git a/src/lib/ecore_evas/ecore_evas_buffer.c b/src/lib/ecore_evas/ecore_evas_buffer.c index 2a33ea3b88..173f33289f 100644 --- a/src/lib/ecore_evas/ecore_evas_buffer.c +++ b/src/lib/ecore_evas/ecore_evas_buffer.c @@ -9,6 +9,7 @@ #include #include "ecore_private.h" #include +#include #include "Ecore_Evas.h" #include "ecore_evas_buffer.h" @@ -35,6 +36,8 @@ _ecore_evas_buffer_free(Ecore_Evas *ee) } free(bdata); + + ecore_event_evas_shutdown(); } static void @@ -885,8 +888,16 @@ ecore_evas_buffer_allocfunc_new(int w, int h, EAPI Ecore_Evas * ecore_evas_buffer_new(int w, int h) { - return ecore_evas_buffer_allocfunc_new + Ecore_Evas *ee; + + ecore_event_evas_init(); + + ee = ecore_evas_buffer_allocfunc_new (w, h, _ecore_evas_buffer_pix_alloc, _ecore_evas_buffer_pix_free, NULL); + + ecore_evas_done(ee, EINA_TRUE); + + return ee; } EAPI const void *