[Pixman] [PATCH v10 11/15] pixman-filter: Turn off subsampling for width=1 filters
spitzak at gmail.com
spitzak at gmail.com
Mon Feb 1 22:28:16 PST 2016
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
More information about the Pixman
mailing list