summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2021-08-28 21:21:02 +0000
committerMatthias Clasen <mclasen@redhat.com>2021-08-28 21:21:02 +0000
commit6d5d9ea073bfa329b4e193f72fcb6a51e3c916bc (patch)
tree43d65d38f2db1f303bc796cf47b47bf0143b9479
parent369ccfc34f8c06636910f172bf98617a17e7b22f (diff)
parent1cfd340caeaab4f3f9ef72ac78f4486359f1fe6c (diff)
downloadgtk+-6d5d9ea073bfa329b4e193f72fcb6a51e3c916bc.tar.gz
Merge branch 'text-selection-missing' into 'master'
ngl: Avoid a coordinate overflow Closes #4214 See merge request GNOME/gtk!3897
-rw-r--r--gsk/ngl/gsknglrenderjob.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gsk/ngl/gsknglrenderjob.c b/gsk/ngl/gsknglrenderjob.c
index 532157d1be..ef4d075997 100644
--- a/gsk/ngl/gsknglrenderjob.c
+++ b/gsk/ngl/gsknglrenderjob.c
@@ -1408,7 +1408,10 @@ gsk_ngl_render_job_visit_color_node (GskNglRenderJob *job,
program = CHOOSE_PROGRAM (job, coloring);
batch = gsk_ngl_command_queue_get_batch (job->command_queue);
- if (batch->any.kind == GSK_NGL_COMMAND_KIND_DRAW &&
+ /* Limit the size, or we end up with a coordinate overflow somwhere. */
+ if (node->bounds.size.width < 300 &&
+ node->bounds.size.height < 300 &&
+ batch->any.kind == GSK_NGL_COMMAND_KIND_DRAW &&
batch->any.program == program->id)
{
GskNglRenderOffscreen offscreen = {0};