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 e7acf4b6dc.
This commit is contained in:
Bryce Harrington 2015-07-17 12:07:18 -07:00
parent edd321c2f5
commit 6951fb4238

View file

@ -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;