gsk: Fix a crash
authorMatthias Clasen <mclasen@redhat.com>
Tue, 16 May 2023 21:32:13 +0000 (17:32 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 5 Jun 2023 11:53:31 +0000 (07:53 -0400)
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.

gsk/gl/gskglcommandqueue.c

index a8624642f09a593f89f392e4362ce5d171ae4860..460d0f2489afc2c1c55e62f9f3398d8421a93a09 100644 (file)
@@ -662,6 +662,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;