[Pixman] [PATCH v10 11/15] pixman-filter: Turn off subsampling for width=1 filters

Oded Gabbay oded.gabbay at gmail.com
Thu Feb 4 02:39:42 PST 2016


On Tue, Feb 2, 2016 at 8:28 AM,  <spitzak at gmail.com> wrote:
> From: Bill Spitzak <spitzak at gmail.com>
>
> Due to normalization these filters must all be identical (a single 1.0).
>
> Also make IMPULSE.IMPULSE produce a width=1 filter, rather than zero
> (which did not work).
>
> v7: Replaced earlier tests for BOX.IMPULSE
> v10: Moved code to filter_width function
>
> Signed-off-by: Bill Spitzak <spitzak at gmail.com>
> ---
>  pixman/pixman-filter.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/pixman/pixman-filter.c b/pixman/pixman-filter.c
> index 10fa398..520ce92 100644
> --- a/pixman/pixman-filter.c
> +++ b/pixman/pixman-filter.c
> @@ -341,7 +341,13 @@ static int
>  filter_width(pixman_kernel_t reconstruct, pixman_kernel_t sample,
>              double* size, int* subsample_bits)
>  {
> -    return ceil (filters[reconstruct].width + *size * filters[sample].width);
> +    int width = ceil (filters[reconstruct].width + *size * filters[sample].width);
> +    if (width <= 1)
> +    {
> +       width = 1;
> +       *subsample_bits = 0;
> +    }
> +    return width;
>  }
>
>  /* Create the parameter list for a SEPARABLE_CONVOLUTION filter
> --
> 1.9.1
>
> _______________________________________________
> Pixman mailing list
> Pixman at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/pixman

I would need to see some form of test/example that is affected by this
patch, as I don't have the knowledge to even ACK it.

Otherwise, you will need to get someone else to review this (Soren ?).

Oded


More information about the Pixman mailing list