diff options
Diffstat (limited to 'pixman/pixman-radial-gradient.c')
-rw-r--r-- | pixman/pixman-radial-gradient.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/pixman/pixman-radial-gradient.c b/pixman/pixman-radial-gradient.c index b6dd6b2..97d0d48 100644 --- a/pixman/pixman-radial-gradient.c +++ b/pixman/pixman-radial-gradient.c @@ -34,6 +34,8 @@ #include <math.h> #include "pixman-private.h" +#define ABS(f) (((f) < 0)? (-(f)) : (f)) + static inline pixman_fixed_32_32_t dot (pixman_fixed_48_16_t x1, pixman_fixed_48_16_t y1, @@ -447,10 +449,10 @@ pixman_image_create_radial_gradient (pixman_point_fixed_t * inner, radial->c1.x = inner->x; radial->c1.y = inner->y; - radial->c1.radius = inner_radius; + radial->c1.radius = ABS (inner_radius); radial->c2.x = outer->x; radial->c2.y = outer->y; - radial->c2.radius = outer_radius; + radial->c2.radius = ABS (outer_radius); /* warning: this computations may overflow */ radial->delta.x = radial->c2.x - radial->c1.x; |