diff options
author | mh0310.choi <mh0310.choi@samsung.com> | 2015-07-28 10:46:57 +0900 |
---|---|---|
committer | mh0310.choi <mh0310.choi@samsung.com> | 2015-07-28 13:08:12 +0900 |
commit | 5e67a6f721eaedda61300baf0799199c7771ebd0 (patch) | |
tree | 6cd50b52498aab50e79b966cdccc2a137db316d9 /src/cairo-clip-boxes.c | |
parent | d3aeffba37161d2b76b29c4ea13369bd67a47a8e (diff) | |
download | cairo-5e67a6f721eaedda61300baf0799199c7771ebd0.tar.gz cairo-5e67a6f721eaedda61300baf0799199c7771ebd0.tar.bz2 cairo-5e67a6f721eaedda61300baf0799199c7771ebd0.zip |
Cairo version Upgrade for Tizen3.0submit/tizen_tv/20150728.091927submit/tizen_mobile/20150728.091912submit/tizen_common/20150728.091859accepted/tizen/tv/20150729.011254accepted/tizen/mobile/20150729.011230
- from 1.12.14 to 1.14.2
Change-Id: I3b62d212041b337bbb926d579f9ce74f42a45c3b
Diffstat (limited to 'src/cairo-clip-boxes.c')
-rw-r--r--[-rwxr-xr-x] | src/cairo-clip-boxes.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/cairo-clip-boxes.c b/src/cairo-clip-boxes.c index eae0919af..0501fa273 100755..100644 --- a/src/cairo-clip-boxes.c +++ b/src/cairo-clip-boxes.c @@ -173,7 +173,7 @@ _cairo_clip_intersect_rectangle_box (cairo_clip_t *clip, clip->extents = *r; } else { if (! _cairo_rectangle_intersect (&clip->extents, r)) - clip = _cairo_clip_set_all_clipped (clip); + return _cairo_clip_set_all_clipped (clip); } if (clip->path == NULL) clip->is_region = _cairo_box_is_pixel_aligned (box); @@ -258,6 +258,9 @@ _cairo_clip_intersect_box (cairo_clip_t *clip, { cairo_rectangle_int_t r; + if (_cairo_clip_is_all_clipped (clip)) + return clip; + _cairo_box_round_to_rectangle (box, &r); if (r.width == 0 || r.height == 0) return _cairo_clip_set_all_clipped (clip); @@ -315,10 +318,12 @@ _cairo_clip_intersect_boxes (cairo_clip_t *clip, _cairo_boxes_extents (boxes, &limits); _cairo_box_round_to_rectangle (&limits, &extents); - if (clip->path == NULL) + if (clip->path == NULL) { clip->extents = extents; - else if (! _cairo_rectangle_intersect (&clip->extents, &extents)) + } else if (! _cairo_rectangle_intersect (&clip->extents, &extents)) { clip = _cairo_clip_set_all_clipped (clip); + goto out; + } if (clip->region) { cairo_region_destroy (clip->region); |