From 0cdf13ac12c570d38737fddb68946157c0b7a4d2 Mon Sep 17 00:00:00 2001 From: Olivier Fourdan Date: Tue, 1 Oct 2019 15:54:47 +0200 Subject: [PATCH] cogl: Flush journal before blitting Make sure to submit all pending primitives before blitting, otherwise rendering from the shell may be incomplete leaving partial drawing of the shell widgets. https://gitlab.gnome.org/GNOME/mutter/merge_requests/820 --- cogl/cogl/cogl-framebuffer.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cogl/cogl/cogl-framebuffer.c b/cogl/cogl/cogl-framebuffer.c index 527fd81ea..e3e112f8c 100644 --- a/cogl/cogl/cogl-framebuffer.c +++ b/cogl/cogl/cogl-framebuffer.c @@ -1374,6 +1374,11 @@ cogl_blit_framebuffer (CoglFramebuffer *src, return FALSE; } + /* Make sure any batched primitives get submitted to the driver + * before blitting + */ + _cogl_framebuffer_flush_journal (src); + /* Make sure the current framebuffers are bound. We explicitly avoid flushing the clip state so we can bind our own empty state */ _cogl_framebuffer_flush_state (dest,