gl renderer: Don't assume an atlas

The source uniform may or may not point
to a glyph atlas. The optimization we do
for color nodes is only possible if it does,
so check this.

Fixes: #6094
This commit is contained in:
Matthias Clasen 2023-09-13 16:56:47 -04:00
parent 8f4fb45715
commit ec1a1d0e34

View File

@ -1466,7 +1466,8 @@ gsk_gl_render_job_visit_color_node (GskGLRenderJob *job,
batch = gsk_gl_command_queue_get_batch (job->command_queue);
/* Limit the size, or we end up with a coordinate overflow somewhere. */
if (node->bounds.size.width < 300 &&
if (job->source_is_glyph_atlas &&
node->bounds.size.width < 300 &&
node->bounds.size.height < 300 &&
batch->any.kind == GSK_GL_COMMAND_KIND_DRAW &&
batch->any.program == program->id)