From: Bill Spitzak <spit...@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 <spit...@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

_______________________________________________
Pixman mailing list
Pixman@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pixman

Reply via email to