summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Spitzak <spitzak@gmail.com>2016-08-30 22:03:14 -0700
committerSøren Sandmann Pedersen <soren.sandmann@gmail.com>2016-09-03 14:53:07 -0400
commitd286078b28bdef15aa0498e6e7ec7da68a42bfeb (patch)
tree61e02e21e135679acb8d9b273377c7223245047d
parent133142449b22fc2799d922479514e677ae91f0f5 (diff)
pixman-filter: Nested polynomial for cubic
v11: Restored range checks Signed-off-by: Bill Spitzak <spitzak@gmail.com> Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com>
-rw-r--r--pixman/pixman-filter.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/pixman/pixman-filter.c b/pixman/pixman-filter.c
index ee58045..3318893 100644
--- a/pixman/pixman-filter.c
+++ b/pixman/pixman-filter.c
@@ -109,14 +109,16 @@ general_cubic (double x, double B, double C)
if (ax < 1)
{
- return ((12 - 9 * B - 6 * C) * ax * ax * ax +
- (-18 + 12 * B + 6 * C) * ax * ax + (6 - 2 * B)) / 6;
+ return (((12 - 9 * B - 6 * C) * ax +
+ (-18 + 12 * B + 6 * C)) * ax * ax +
+ (6 - 2 * B)) / 6;
}
- else if (ax >= 1 && ax < 2)
+ else if (ax < 2)
{
- return ((-B - 6 * C) * ax * ax * ax +
- (6 * B + 30 * C) * ax * ax + (-12 * B - 48 * C) *
- ax + (8 * B + 24 * C)) / 6;
+ return ((((-B - 6 * C) * ax +
+ (6 * B + 30 * C)) * ax +
+ (-12 * B - 48 * C)) * ax +
+ (8 * B + 24 * C)) / 6;
}
else
{