[gtk] gsk: Fix a crash in gsk_render_node_diff



commit 2803bd93ce605970708cb519d662ef62b25bfc59
Author: Matthias Clasen <mclasen redhat com>
Date:   Sun Jul 21 13:18:58 2019 -0700

    gsk: Fix a crash in gsk_render_node_diff
    
    The only thing worse than freeing the same
    cairo region twice is freeing it three times.

 gsk/gskrendernodeimpl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/gsk/gskrendernodeimpl.c b/gsk/gskrendernodeimpl.c
index d08ca9073a..13e953ee2e 100644
--- a/gsk/gskrendernodeimpl.c
+++ b/gsk/gskrendernodeimpl.c
@@ -1966,14 +1966,14 @@ gsk_transform_node_diff (GskRenderNode  *node1,
             cairo_region_t *tmp = cairo_region_copy (sub);
             cairo_region_translate (tmp, 1, 0);
             cairo_region_union (sub, tmp);
-            cairo_region_destroy (sub);
+            cairo_region_destroy (tmp);
           }
         if (floor (dy) != dy)
           {
             cairo_region_t *tmp = cairo_region_copy (sub);
             cairo_region_translate (tmp, 0, 1);
             cairo_region_union (sub, tmp);
-            cairo_region_destroy (sub);
+            cairo_region_destroy (tmp);
           }
         cairo_region_union (region, sub);
         cairo_region_destroy (sub);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]