diff options
author | Benjamin Otte <otte@redhat.com> | 2010-06-05 15:19:44 +0200 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2010-06-07 13:37:49 +0200 |
commit | 550335efeddf813c1bec493513254fdbd34a9ace (patch) | |
tree | 9b38c603366bd056e08a18561c933f03522df39a | |
parent | 1e003fce8f7239aaf4608747d63287e0c715ee51 (diff) |
Remove _cairo_surface_composite_trapezoids_as_polygon()
The function computed the composite rectangles wrong and was only used
in a gl fallback anyway. So instead of trying to fix it, just remove it
and make sure gl doesn't fallback.
-rw-r--r-- | src/cairo-gl-surface.c | 14 | ||||
-rw-r--r-- | src/cairo-spans-private.h | 12 | ||||
-rw-r--r-- | src/cairo-spans.c | 75 | ||||
-rw-r--r-- | src/cairoint.h | 12 |
4 files changed, 0 insertions, 113 deletions
diff --git a/src/cairo-gl-surface.c b/src/cairo-gl-surface.c index f7a16ae9..9aa88528 100644 --- a/src/cairo-gl-surface.c +++ b/src/cairo-gl-surface.c @@ -985,20 +985,6 @@ _cairo_gl_surface_composite_trapezoids (cairo_operator_t op, if (! _cairo_gl_operator_is_supported (op)) return UNSUPPORTED ("unsupported operator"); - if (_cairo_surface_check_span_renderer (op,pattern,&dst->base, antialias)) { - status = - _cairo_surface_composite_trapezoids_as_polygon (&dst->base, - op, pattern, - antialias, - src_x, src_y, - dst_x, dst_y, - width, height, - traps, num_traps, - clip_region); - if (status != CAIRO_INT_STATUS_UNSUPPORTED) - return status; - } - status = _cairo_gl_get_traps_pattern (dst, dst_x, dst_y, width, height, traps, num_traps, antialias, diff --git a/src/cairo-spans-private.h b/src/cairo-spans-private.h index e7e96562..00a4df86 100644 --- a/src/cairo-spans-private.h +++ b/src/cairo-spans-private.h @@ -186,16 +186,4 @@ _cairo_surface_composite_polygon (cairo_surface_t *surface, cairo_polygon_t *polygon, cairo_region_t *clip_region); -cairo_private cairo_status_t -_cairo_surface_composite_trapezoids_as_polygon (cairo_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *pattern, - cairo_antialias_t antialias, - int src_x, int src_y, - int dst_x, int dst_y, - int width, int height, - cairo_trapezoid_t *traps, - int num_traps, - cairo_region_t *clip_region); - #endif /* CAIRO_SPANS_PRIVATE_H */ diff --git a/src/cairo-spans.c b/src/cairo-spans.c index 434fce0b..a187b899 100644 --- a/src/cairo-spans.c +++ b/src/cairo-spans.c @@ -84,81 +84,6 @@ _cairo_surface_composite_polygon (cairo_surface_t *surface, return status; } -cairo_status_t -_cairo_surface_composite_trapezoids_as_polygon (cairo_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *pattern, - cairo_antialias_t antialias, - int src_x, int src_y, - int dst_x, int dst_y, - int width, int height, - cairo_trapezoid_t *traps, - int num_traps, - cairo_region_t *clip_region) -{ - cairo_span_renderer_t *renderer; - cairo_scan_converter_t *converter; - cairo_composite_rectangles_t rects; - cairo_status_t status; - - rects.source.x = src_x; - rects.source.y = src_y; - rects.source.width = width; - rects.source.height = height; - - rects.mask.x = dst_x; - rects.mask.y = dst_y; - rects.mask.width = width; - rects.mask.height = height; - - rects.bounded.x = dst_x; - rects.bounded.y = dst_y; - rects.bounded.width = width; - rects.bounded.height = height; - - rects.unbounded = rects.bounded; - - rects.is_bounded = _cairo_operator_bounded_by_either (op); - - converter = _create_scan_converter (CAIRO_FILL_RULE_WINDING, - antialias, - &rects); - status = converter->status; - if (unlikely (status)) - goto CLEANUP_CONVERTER; - - while (num_traps--) { - status = converter->add_edge (converter, - &traps->left.p1, &traps->left.p2, - traps->top, traps->bottom, 1); - if (unlikely (status)) - goto CLEANUP_CONVERTER; - - status = converter->add_edge (converter, - &traps->right.p1, &traps->right.p2, - traps->top, traps->bottom, -1); - if (unlikely (status)) - goto CLEANUP_CONVERTER; - - traps++; - } - - renderer = _cairo_surface_create_span_renderer (op, pattern, surface, - antialias, &rects, - clip_region); - status = converter->generate (converter, renderer); - if (unlikely (status)) - goto CLEANUP_RENDERER; - - status = renderer->finish (renderer); - - CLEANUP_RENDERER: - renderer->destroy (renderer); - CLEANUP_CONVERTER: - converter->destroy (converter); - return status; -} - static void _cairo_nil_destroy (void *abstract) { diff --git a/src/cairoint.h b/src/cairoint.h index 1f8643d2..d8df10c1 100644 --- a/src/cairoint.h +++ b/src/cairoint.h @@ -1973,18 +1973,6 @@ _cairo_surface_composite_trapezoids (cairo_operator_t op, int ntraps, cairo_region_t *clip_region); -cairo_private cairo_status_t -_cairo_surface_composite_trapezoids_as_polygon (cairo_surface_t *surface, - cairo_operator_t op, - const cairo_pattern_t *pattern, - cairo_antialias_t antialias, - int src_x, int src_y, - int dst_x, int dst_y, - int width, int height, - cairo_trapezoid_t *traps, - int num_traps, - cairo_region_t *clip_region); - cairo_private cairo_span_renderer_t * _cairo_surface_create_span_renderer (cairo_operator_t op, const cairo_pattern_t *pattern, |