barbieri pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=bf2abf12b403230964fe99e9d4b6374a359e2459
commit bf2abf12b403230964fe99e9d4b6374a359e2459 Author: Gustavo Sverzut Barbieri <gustavo.barbi...@intel.com> Date: Thu Mar 6 00:53:08 2014 -0300 evas/fb: avoid crashing it outbuf setup failed. if fb setup fails, then we shouldn't use re->ob as it's NULL. @fix --- src/modules/evas/engines/fb/evas_engine.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/modules/evas/engines/fb/evas_engine.c b/src/modules/evas/engines/fb/evas_engine.c index ea73f8e..1fc6584 100644 --- a/src/modules/evas/engines/fb/evas_engine.c +++ b/src/modules/evas/engines/fb/evas_engine.c @@ -62,8 +62,16 @@ _output_setup(int w, int h, int rot, int vt, int dev, int refresh) evas_fb_outbuf_fb_init(); - /* get any stored performance metrics from device (xserver) */ + /* get any stored performance metrics from device */ re->ob = evas_fb_outbuf_fb_setup_fb(w, h, rot, OUTBUF_DEPTH_INHERIT, vt, dev, refresh); + if (!re->ob) + { + free(re); + evas_common_font_shutdown(); + evas_common_image_shutdown(); + return NULL; + } + re->tb = evas_common_tilebuf_new(evas_fb_outbuf_fb_get_width(re->ob), evas_fb_outbuf_fb_get_height(re->ob)); /* no backbuf! */ evas_fb_outbuf_fb_set_have_backbuf(re->ob, 0); --