diff --git a/legacy/evas/src/modules/engines/software_x11/evas_xcb_outbuf.c b/legacy/evas/src/modules/engines/software_x11/evas_xcb_outbuf.c index b84ee16aae..9e6b8d156b 100644 --- a/legacy/evas/src/modules/engines/software_x11/evas_xcb_outbuf.c +++ b/legacy/evas/src/modules/engines/software_x11/evas_xcb_outbuf.c @@ -259,7 +259,8 @@ evas_software_xcb_outbuf_new_region_for_update(Outbuf *buf, int x, int y, int w, return NULL; } - if (!eina_array_push(&buf->priv.onebuf_regions, rect)) + if ((eina_array_push(&buf->priv.onebuf_regions, rect)) && + (buf->priv.onebuf)) { if (cx) *cx = x; if (cy) *cy = y; diff --git a/legacy/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c b/legacy/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c index ab4e777a4a..c2e1a9abfc 100644 --- a/legacy/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c +++ b/legacy/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c @@ -382,7 +382,8 @@ evas_software_xlib_outbuf_new_region_for_update(Outbuf *buf, int x, int y, int w return NULL; } - if (!eina_array_push(&buf->priv.onebuf_regions, rect)) + if ((eina_array_push(&buf->priv.onebuf_regions, rect)) && + (buf->priv.onebuf)) { *cx = x; *cy = y;