[Pixman] [PATCH v10 12/15] pixman-filter: Made reconstruct==impulse and scale < 1 set scale to 1

spitzak at gmail.com spitzak at gmail.com
Mon Feb 1 22:28:17 PST 2016


From: Bill Spitzak <spitzak at gmail.com>

This replaces settings that don't work (because the filter cannot be normalized)
with something that produces an image.

v7: First version with this. Previously you got lots of strange garbage filters
 that depended on the implementation.

v10: Moved code to filter_width function

Signed-off-by: Bill Spitzak <spitzak at gmail.com>
---
 pixman/pixman-filter.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/pixman/pixman-filter.c b/pixman/pixman-filter.c
index 520ce92..f28cc29 100644
--- a/pixman/pixman-filter.c
+++ b/pixman/pixman-filter.c
@@ -341,7 +341,10 @@ static int
 filter_width(pixman_kernel_t reconstruct, pixman_kernel_t sample,
 	     double* size, int* subsample_bits)
 {
-    int width = ceil (filters[reconstruct].width + *size * filters[sample].width);
+    int width;
+    if (reconstruct == PIXMAN_KERNEL_IMPULSE && *size < 1.0)
+	*size = 1.0;
+    width = ceil (filters[reconstruct].width + *size * filters[sample].width);
     if (width <= 1)
     {
 	width = 1;
-- 
1.9.1



More information about the Pixman mailing list