summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2023-05-16 17:32:13 -0400
committerMatthias Clasen <mclasen@redhat.com>2023-05-16 17:33:21 -0400
commit9dd83ab354c03c5dba2e0111245e67cf77d3edfd (patch)
treec296641598ae1b4604525c68681bd092ff303237
parent0bbc6f89324e1caa0c8c1919f1b9d4133a59223b (diff)
downloadgtk+-9dd83ab354c03c5dba2e0111245e67cf77d3edfd.tar.gz
gsk: Fix a crash
When we start ignoring batches, we must do it everywhere, or we may run into assertions. This was triggered by an enormous text node tree produced by tests/rendernode-create.
-rw-r--r--gsk/gl/gskglcommandqueue.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gsk/gl/gskglcommandqueue.c b/gsk/gl/gskglcommandqueue.c
index e7af501582..6c6a27ca88 100644
--- a/gsk/gl/gskglcommandqueue.c
+++ b/gsk/gl/gskglcommandqueue.c
@@ -721,6 +721,10 @@ gsk_gl_command_queue_split_draw (GskGLCommandQueue *self)
g_assert (GSK_IS_GL_COMMAND_QUEUE (self));
g_assert (self->batches.len > 0);
+
+ if (will_ignore_batch (self))
+ return;
+
g_assert (self->in_draw == TRUE);
program = self->program_info;