Bug 1258558 - Don't check extents for empty regions. r=jrmuizel draft
authorBenoit Girard <b56girard@gmail.com>
Wed, 23 Mar 2016 14:38:30 -0400
changeset 344009 3cee0f7a404f3c9e4388b525229c3bb68c3f2df6
parent 343988 a6f0ccb03957cc68b70a18792edd636cebfc6d14
child 516873 94c7120f0dff2fd6b00468100e824a5f8b43739a
push id13738
push userb56girard@gmail.com
push dateWed, 23 Mar 2016 18:38:37 +0000
reviewersjrmuizel
bugs1258558
milestone48.0a1
Bug 1258558 - Don't check extents for empty regions. r=jrmuizel MozReview-Commit-ID: FEkiTr3azlV
gfx/cairo/libpixman/src/pixman-region.c
--- a/gfx/cairo/libpixman/src/pixman-region.c
+++ b/gfx/cairo/libpixman/src/pixman-region.c
@@ -293,16 +293,23 @@ alloc_data (size_t n)
 
 PIXMAN_EXPORT pixman_bool_t
 PREFIX (_equal) (region_type_t *reg1, region_type_t *reg2)
 {
     int i;
     box_type_t *rects1;
     box_type_t *rects2;
 
+    /*
+     * If the region is empty the extents are undefined so we need to check
+     * for empty before comparing the extents.
+     */
+    if (PIXREGION_NIL (reg1) && PIXREGION_NIL(reg2))
+        return TRUE;
+
     if (reg1->extents.x1 != reg2->extents.x1)
 	return FALSE;
     
     if (reg1->extents.x2 != reg2->extents.x2)
 	return FALSE;
     
     if (reg1->extents.y1 != reg2->extents.y1)
 	return FALSE;