[cairo] [PATCH 18/71] drm: fixed missing antialiasing mode parameters
Bryce Harrington
bryce at osg.samsung.com
Tue Apr 25 01:31:16 UTC 2017
On Mon, Apr 17, 2017 at 06:56:57PM +0200, Enrico Weigelt, metux IT consult wrote:
> Several functions now want an additional parameter for antialiasing mode.
> Some callers still haven't been updated yet.
>
> Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt at gr13.net>
Reviewed-by: Bryce Harrington <bryce at osg.samsung.com>
> ---
> src/drm/cairo-drm-i915-surface.c | 18 +++++++++++-------
> src/drm/cairo-drm-i965-surface.c | 11 +++++++----
> 2 files changed, 18 insertions(+), 11 deletions(-)
>
> diff --git a/src/drm/cairo-drm-i915-surface.c b/src/drm/cairo-drm-i915-surface.c
> index 6048bb5c0..12905b85f 100644
> --- a/src/drm/cairo-drm-i915-surface.c
> +++ b/src/drm/cairo-drm-i915-surface.c
> @@ -878,6 +878,7 @@ i915_fixup_unbounded (i915_surface_t *dst,
> static cairo_status_t
> i915_fixup_unbounded_boxes (i915_surface_t *dst,
> const cairo_composite_rectangles_t *extents,
> + cairo_antialias_t antialias,
> const cairo_clip_t *clip,
> cairo_boxes_t *boxes)
> {
> @@ -910,7 +911,7 @@ i915_fixup_unbounded_boxes (i915_surface_t *dst,
>
> _cairo_boxes_init (&tmp);
>
> - status = _cairo_boxes_add (&tmp, &box);
> + status = _cairo_boxes_add (&tmp, antialias, &box);
> assert (status == CAIRO_STATUS_SUCCESS);
>
> tmp.chunks.next = &boxes->chunks;
> @@ -927,12 +928,12 @@ i915_fixup_unbounded_boxes (i915_surface_t *dst,
> pbox = pixman_region32_rectangles (&clip_region->rgn, &i);
> _cairo_boxes_limit (&clear, (cairo_box_t *) pbox, i);
>
> - status = _cairo_boxes_add (&clear, &box);
> + status = _cairo_boxes_add (&clear, antialias, &box);
> assert (status == CAIRO_STATUS_SUCCESS);
>
> for (chunk = &boxes->chunks; chunk != NULL; chunk = chunk->next) {
> for (i = 0; i < chunk->count; i++) {
> - status = _cairo_boxes_add (&clear, &chunk->base[i]);
> + status = _cairo_boxes_add (&clear, antialias, &chunk->base[i]);
> if (unlikely (status)) {
> _cairo_boxes_fini (&clear);
> return status;
> @@ -1647,7 +1648,7 @@ _composite_boxes (i915_surface_t *dst,
> }
>
> if (! extents->is_bounded)
> - status = i915_fixup_unbounded_boxes (dst, extents, clip, boxes);
> + status = i915_fixup_unbounded_boxes (dst, extents, antialias, clip, boxes);
>
> err_device:
> cairo_device_release (&device->intel.base.base);
> @@ -1933,6 +1934,7 @@ i915_surface_fill_with_alpha (void *abstract_dst,
> _cairo_boxes_limit (&boxes, clip_boxes, num_boxes);
> status = (cairo_int_status_t)_cairo_path_fixed_fill_rectilinear_to_boxes (path,
> fill_rule,
> + antialias,
> &boxes);
> if (likely (status == CAIRO_INT_STATUS_SUCCESS)) {
> status = _clip_and_composite_boxes (dst, op, source,
> @@ -1991,6 +1993,7 @@ static cairo_int_status_t
> i915_surface_paint_with_alpha (void *abstract_dst,
> cairo_operator_t op,
> const cairo_pattern_t *source,
> + cairo_antialias_t antialias,
> const cairo_clip_t *clip,
> double opacity)
> {
> @@ -2048,7 +2051,7 @@ i915_surface_paint_with_alpha (void *abstract_dst,
> {
> _cairo_boxes_init_for_array (&boxes, clip_boxes, num_boxes);
> status = _clip_and_composite_boxes (dst, op, source,
> - &boxes, CAIRO_ANTIALIAS_DEFAULT,
> + &boxes, antialias,
> &extents, clip, opacity);
> }
> if (clip_boxes != boxes.boxes_embedded)
> @@ -2075,7 +2078,7 @@ i915_surface_paint (void *abstract_dst,
> return CAIRO_STATUS_SUCCESS;
> }
>
> - return i915_surface_paint_with_alpha (dst, op, source, clip, 1.);
> + return i915_surface_paint_with_alpha (dst, op, source, CAIRO_ANTIALIAS_DEFAULT, clip, 1.);
> }
>
> static cairo_int_status_t
> @@ -2097,7 +2100,7 @@ i915_surface_mask (void *abstract_dst,
>
> if (mask->type == CAIRO_PATTERN_TYPE_SOLID) {
> const cairo_solid_pattern_t *solid = (cairo_solid_pattern_t *) mask;
> - return i915_surface_paint_with_alpha (dst, op, source, clip, solid->color.alpha);
> + return i915_surface_paint_with_alpha (dst, op, source, CAIRO_ANTIALIAS_DEFAULT, clip, solid->color.alpha);
> }
>
> status = _cairo_composite_rectangles_init_for_mask (&extents,
> @@ -2275,6 +2278,7 @@ i915_surface_stroke (void *abstract_dst,
> status = (cairo_int_status_t)_cairo_path_fixed_stroke_rectilinear_to_boxes (path,
> stroke_style,
> ctm,
> + antialias,
> &boxes);
> if (likely (status == CAIRO_INT_STATUS_SUCCESS)) {
> status = _clip_and_composite_boxes (dst, op, source,
> diff --git a/src/drm/cairo-drm-i965-surface.c b/src/drm/cairo-drm-i965-surface.c
> index 2c5530345..817f78c3c 100644
> --- a/src/drm/cairo-drm-i965-surface.c
> +++ b/src/drm/cairo-drm-i965-surface.c
> @@ -872,6 +872,7 @@ i965_fixup_unbounded (i965_surface_t *dst,
> static cairo_status_t
> i965_fixup_unbounded_boxes (i965_surface_t *dst,
> const cairo_composite_rectangles_t *extents,
> + const cairo_antialias_t antialias,
> const cairo_clip_t *clip,
> cairo_boxes_t *boxes)
> {
> @@ -915,7 +916,7 @@ i965_fixup_unbounded_boxes (i965_surface_t *dst,
>
> _cairo_boxes_init (&tmp);
>
> - status = _cairo_boxes_add (&tmp, &box);
> + status = _cairo_boxes_add (&tmp, antialias, &box);
> assert (status == CAIRO_STATUS_SUCCESS);
>
> tmp.chunks.next = &boxes->chunks;
> @@ -932,12 +933,12 @@ i965_fixup_unbounded_boxes (i965_surface_t *dst,
> pbox = pixman_region32_rectangles (&clip_region->rgn, &i);
> _cairo_boxes_limit (&clear, (cairo_box_t *) pbox, i);
>
> - status = _cairo_boxes_add (&clear, &box);
> + status = _cairo_boxes_add (&clear, antialias, &box);
> assert (status == CAIRO_STATUS_SUCCESS);
>
> for (chunk = &boxes->chunks; chunk != NULL; chunk = chunk->next) {
> for (i = 0; i < chunk->count; i++) {
> - status = _cairo_boxes_add (&clear, &chunk->base[i]);
> + status = _cairo_boxes_add (&clear, antialias, &chunk->base[i]);
> if (unlikely (status)) {
> _cairo_boxes_fini (&clear);
> return status;
> @@ -1047,7 +1048,7 @@ _composite_boxes (i965_surface_t *dst,
> }
>
> if (! extents->is_bounded)
> - status = i965_fixup_unbounded_boxes (dst, extents, clip, boxes);
> + status = i965_fixup_unbounded_boxes (dst, extents, antialias, clip, boxes);
>
> err_device:
> cairo_device_release (&device->intel.base.base);
> @@ -1333,6 +1334,7 @@ i965_surface_stroke (void *abstract_dst,
> status = _cairo_path_fixed_stroke_rectilinear_to_boxes (path,
> stroke_style,
> ctm,
> + antialias,
> &boxes);
> if (likely (status == CAIRO_INT_STATUS_SUCCESS)) {
> status = _clip_and_composite_boxes (dst, op, source,
> @@ -1440,6 +1442,7 @@ i965_surface_fill (void *abstract_dst,
> _cairo_boxes_limit (&boxes, clip_boxes, num_boxes);
> status = _cairo_path_fixed_fill_rectilinear_to_boxes (path,
> fill_rule,
> + antialias,
> &boxes);
> if (likely (status == CAIRO_INT_STATUS_SUCCESS)) {
> status = _clip_and_composite_boxes (dst, op, source,
> --
> 2.11.0.rc0.7.gbe5a750
>
> --
> cairo mailing list
> cairo at cairographics.org
> https://lists.cairographics.org/mailman/listinfo/cairo
More information about the cairo
mailing list