summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garcia Campos <cgarcia@igalia.com>2021-09-02 09:08:03 +0200
committerCarlos Garcia Campos <cgarcia@igalia.com>2021-09-02 09:08:03 +0200
commita727a12ef7f1e99580cacf03decc4161db3274ed (patch)
treef8bdd96e3163d62d281cb63a30467193c9e8071f
parent42d3f4cc29338dce02faf062ef6f18a1fe32ca99 (diff)
downloadcairo-carlosgc/polygon-intersect-crash.tar.gz
polygon-intersect: add missing null checkscarlosgc/polygon-intersect-crash
Return early if right becomes NULL.
-rw-r--r--src/cairo-polygon-intersect.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cairo-polygon-intersect.c b/src/cairo-polygon-intersect.c
index 001e55ee0..10d05e732 100644
--- a/src/cairo-polygon-intersect.c
+++ b/src/cairo-polygon-intersect.c
@@ -1167,6 +1167,9 @@ active_edges (cairo_bo_edge_t *left,
} while (1);
right = left->next;
+ if (! right)
+ return;
+
do {
if unlikely ((right->deferred.other))
edges_end (right, top, polygon);
@@ -1179,6 +1182,8 @@ active_edges (cairo_bo_edge_t *left,
}
right = right->next;
+ if (! right)
+ return;
} while (1);
edges_start_or_continue (left, right, top, polygon);