summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2023-05-09 06:51:53 -0400
committerMatthias Clasen <mclasen@redhat.com>2023-05-09 06:56:09 -0400
commit97bc4f77c62498c08077286f0b8bd193d3de2391 (patch)
tree7683b1db7a5b0384007762ef0762bde6b4c625c1
parentd948ac62e4432a424c10e9ab95c7d71e4f9893e9 (diff)
downloadgtk+-97bc4f77c62498c08077286f0b8bd193d3de2391.tar.gz
gsk: Fix a refcounting mishap
This may fix #5823
-rw-r--r--gsk/gl/gskglrenderjob.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gsk/gl/gskglrenderjob.c b/gsk/gl/gskglrenderjob.c
index 25943c3fe1..85ee17eac8 100644
--- a/gsk/gl/gskglrenderjob.c
+++ b/gsk/gl/gskglrenderjob.c
@@ -506,6 +506,7 @@ extract_matrix_metadata (GskGLRenderModelview *modelview)
}
}
+/* takes ownership of transform */
static void
gsk_gl_render_job_set_modelview (GskGLRenderJob *job,
GskTransform *transform)
@@ -538,6 +539,7 @@ gsk_gl_render_job_set_modelview (GskGLRenderJob *job,
job->current_modelview = modelview;
}
+/* doesn't take ownership of transform */
static void
gsk_gl_render_job_push_modelview (GskGLRenderJob *job,
GskTransform *transform)
@@ -2123,7 +2125,6 @@ gsk_gl_render_job_visit_transform_node (GskGLRenderJob *job,
scale = gsk_transform_translate (gsk_transform_scale (NULL, sx, sy), &GRAPHENE_POINT_INIT (tx, ty));
gsk_gl_render_job_push_modelview (job, scale);
transform = gsk_transform_transform (gsk_transform_invert (scale), transform);
- gsk_transform_unref (scale);
}
}