mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-04 02:57:38 +00:00
f2b12f7543
Currently fixup_unbounded_boxes assumes that the extents are tight when we only have one box. This is not always true. e.g. when we tesselate boxes we can end up with only one box which is smaller than the extents and the extents are not updated. --HG-- extra : rebase_source : 5e01da7d845c1cd34f9e87d5c7de22dafe9df7a4
23 lines
941 B
Diff
23 lines
941 B
Diff
diff --git a/gfx/cairo/cairo/src/cairo-image-surface.c b/gfx/cairo/cairo/src/cairo-image-surface.c
|
|
--- a/gfx/cairo/cairo/src/cairo-image-surface.c
|
|
+++ b/gfx/cairo/cairo/src/cairo-image-surface.c
|
|
@@ -1797,17 +1797,17 @@ _cairo_image_surface_fixup_unbounded_box
|
|
cairo_boxes_t *boxes)
|
|
{
|
|
cairo_boxes_t clear;
|
|
cairo_box_t box;
|
|
cairo_status_t status;
|
|
struct _cairo_boxes_chunk *chunk;
|
|
int i;
|
|
|
|
- if (boxes->num_boxes <= 1 && clip_region == NULL)
|
|
+ if (boxes->num_boxes < 1 && clip_region == NULL)
|
|
return _cairo_image_surface_fixup_unbounded (dst, extents, NULL);
|
|
|
|
_cairo_boxes_init (&clear);
|
|
|
|
box.p1.x = _cairo_fixed_from_int (extents->unbounded.x + extents->unbounded.width);
|
|
box.p1.y = _cairo_fixed_from_int (extents->unbounded.y);
|
|
box.p2.x = _cairo_fixed_from_int (extents->unbounded.x);
|
|
box.p2.y = _cairo_fixed_from_int (extents->unbounded.y + extents->unbounded.height);
|