From dcc6cb8f1c2cc51f53624190f37d79e8946ab4b3 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 13 Mar 2023 17:59:04 +0100 Subject: [PATCH] gsk: Fix rotated texture scale nodes This was causing us to render rotated texture scale nodes to an unclipped offscreen, bringing 'giant intermediate texture' problems back. --- gsk/gl/gskglrenderjob.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gsk/gl/gskglrenderjob.c b/gsk/gl/gskglrenderjob.c index 433e38638c..ce7ce774d1 100644 --- a/gsk/gl/gskglrenderjob.c +++ b/gsk/gl/gskglrenderjob.c @@ -260,6 +260,7 @@ node_supports_2d_transform (const GskRenderNode *node) case GSK_OPACITY_NODE: case GSK_COLOR_MATRIX_NODE: case GSK_TEXTURE_NODE: + case GSK_TEXTURE_SCALE_NODE: case GSK_CROSS_FADE_NODE: case GSK_LINEAR_GRADIENT_NODE: case GSK_REPEATING_LINEAR_GRADIENT_NODE: @@ -3643,6 +3644,7 @@ gsk_gl_render_job_visit_texture_scale_node (GskGLRenderJob *job, GskTextureKey key; gsk_gl_render_job_untransform_bounds (job, &job->current_clip->rect.bounds, &clip_rect); + if (!graphene_rect_intersection (bounds, &clip_rect, &clip_rect)) return; -- 2.30.2