summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2010-06-05 15:19:44 +0200
committerBenjamin Otte <otte@redhat.com>2010-06-07 13:37:49 +0200
commit550335efeddf813c1bec493513254fdbd34a9ace (patch)
tree9b38c603366bd056e08a18561c933f03522df39a
parent1e003fce8f7239aaf4608747d63287e0c715ee51 (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.c14
-rw-r--r--src/cairo-spans-private.h12
-rw-r--r--src/cairo-spans.c75
-rw-r--r--src/cairoint.h12
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,