From f94764feec4dd913d80f4686dbee66d4fb17a9ad Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 29 Sep 2015 12:29:41 -0400 Subject: [PATCH] reject client resize attempts for clients with dirty pixmaps these clients will resize/render correctly only after the next render loop, so defer until then to avoid #RenderFail fix T2754 --- src/bin/e_comp_object.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index 5d7e421cd..77d4ab51c 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -1067,7 +1067,8 @@ _e_comp_intercept_resize(void *data, Evas_Object *obj, int w, int h) cw->ec->client.h = ih; if ((cw->ec->client.w < 0) || (cw->ec->client.h < 0)) CRI("WTF"); } - if ((!cw->ec->input_only) && cw->redirected && (!e_pixmap_size_get(cw->ec->pixmap, &pw, &ph))) + if ((!cw->ec->input_only) && cw->redirected && (e_pixmap_dirty_get(cw->ec->pixmap) || + (!e_pixmap_size_get(cw->ec->pixmap, &pw, &ph)))) { if (e_comp->comp_type != E_PIXMAP_TYPE_X) return; /* client can't be resized if its pixmap isn't usable, try again */