diff options
author | Bryce Harrington <bryce@osg.samsung.com> | 2015-07-17 12:07:18 -0700 |
---|---|---|
committer | Bryce Harrington <bryce@osg.samsung.com> | 2015-07-17 12:07:18 -0700 |
commit | 6951fb4238706522d357fd25236b17492baea1b0 (patch) | |
tree | de48bc499afa9db505ca3a4fc7b6455c5746dd41 /src/cairo-pattern.c | |
parent | edd321c2f52daaef9804481bc4d0aa84f8ff0060 (diff) | |
download | cairo-6951fb4238706522d357fd25236b17492baea1b0.tar.gz |
Revert "pattern: allow for a floating one pixel rounded difference."
While this fixed a real bug, in testing this patch was found to fail a
number of tests and thus needs further work.
This reverts commit e7acf4b6dc6666c2a2c54fb08e9ad6f01a1d415f.
Diffstat (limited to 'src/cairo-pattern.c')
-rw-r--r-- | src/cairo-pattern.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/cairo-pattern.c b/src/cairo-pattern.c index cdd7529dd..b4bc83c0e 100644 --- a/src/cairo-pattern.c +++ b/src/cairo-pattern.c @@ -3531,7 +3531,7 @@ _cairo_pattern_get_extents (const cairo_pattern_t *pattern, cairo_rectangle_int_t *extents) { double x1, y1, x2, y2; - double ix1, ix2, iy1, iy2; + int ix1, ix2, iy1, iy2; cairo_bool_t round_x = FALSE; cairo_bool_t round_y = FALSE; @@ -3725,12 +3725,12 @@ _cairo_pattern_get_extents (const cairo_pattern_t *pattern, if (x1 < CAIRO_RECT_INT_MIN) ix1 = CAIRO_RECT_INT_MIN; else - ix1 = x1; + ix1 = _cairo_lround (x1); if (x2 > CAIRO_RECT_INT_MAX) ix2 = CAIRO_RECT_INT_MAX; else - ix2 = x2; - extents->x = ix1; extents->width = _cairo_lround(ix2 - ix1); + ix2 = _cairo_lround (x2); + extents->x = ix1; extents->width = ix2 - ix1; if (!round_y) { y1 -= 0.5; @@ -3744,7 +3744,7 @@ _cairo_pattern_get_extents (const cairo_pattern_t *pattern, iy2 = CAIRO_RECT_INT_MAX; else iy2 = _cairo_lround (y2); - extents->y = iy1; extents->height = _cairo_lround(iy2 - iy1); + extents->y = iy1; extents->height = iy2 - iy1; return; |