[PATCH] BugFix the tighten-bounds with egl backend

[email protected]
Newsgroups gmane.comp.lib.cairo
Message-ID <[email protected]>
From: xiaolin.ji <[email protected]>

I tested tighten-bounds with egl backend at my sandybridge, it failed. when fill_boxes with the boxes which create from "_cairo_boxes_init_from_rectangle", the boxes->chunks.count is zero, it will do nothing when emit the aligned boxes
---
 src/cairo-boxes.c |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/cairo-boxes.c b/src/cairo-boxes.c
index 63b68dd..b96b4b8 100644
--- a/src/cairo-boxes.c
+++ b/src/cairo-boxes.c
@@ -57,10 +57,18 @@ void
 _cairo_boxes_init_from_rectangle (cairo_boxes_t *boxes,
 				  int x, int y, int w, int h)
 {
+    cairo_box_t box;
+    cairo_int_status_t status;
+	
     _cairo_boxes_init (boxes);
+	
+    box.p1.x = _cairo_fixed_from_int (x);
+    box.p1.y = _cairo_fixed_from_int (y);
+    box.p2.x = _cairo_fixed_from_int (x + w);
+    box.p2.y = _cairo_fixed_from_int (y + h);
 
-    _cairo_box_from_integers (&boxes->chunks.base[0], x, y, w, h);
-    boxes->num_boxes = 1;
+    status = _cairo_boxes_add (boxes, CAIRO_ANTIALIAS_DEFAULT, &box);
+    assert (status == CAIRO_INT_STATUS_SUCCESS);
 }
 
 void
-- 
1.7.10.4

-- 
cairo mailing list
[email protected]
http://lists.cairographics.org/mailman/listinfo/cairo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.