diff options
Diffstat (limited to '')
-rw-r--r-- | x11-libs/cairo/files/cairo-1.10.2-interix.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/x11-libs/cairo/files/cairo-1.10.2-interix.patch b/x11-libs/cairo/files/cairo-1.10.2-interix.patch new file mode 100644 index 0000000..3333e3e --- /dev/null +++ b/x11-libs/cairo/files/cairo-1.10.2-interix.patch @@ -0,0 +1,36 @@ +commit 95f6f7a174ca096a3d3dbe84ff220d166d1e2baa +Author: Uli Schlachter <psychon@znc.in> +Date: Fri Oct 22 11:54:57 2010 +0200 + + Make both versions of _cairo_lround consistent again + + Commit c0008242b0f made cairo use libm's lround instead of its own _cairo_lround + by default. However, since commit ce58f874 from 2006, _cairo_lround does + arithmetic rounding instead of away-from-zero rounding (before said commit, it + was using baker's rounding). + + So to make the rounding of _cairo_lround be independent from + DISABLE_SOME_FLOATING_POINT, we have to use another function. Turns out that + _cairo_round already does the same thing that _cairo_lround does. Their only + difference is the return type. + + Signed-off-by: Uli Schlachter <psychon@znc.in> + Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> + +diff --git a/src/cairoint.h b/src/cairoint.h +index 53c87e5..539d92e 100644 +--- a/src/cairoint.h ++++ b/src/cairoint.h +@@ -968,7 +968,11 @@ _cairo_round (double r) + cairo_private int + _cairo_lround (double d) cairo_const; + #else +-#define _cairo_lround lround ++static inline int cairo_const ++_cairo_lround (double r) ++{ ++ return _cairo_round (r); ++} + #endif + + cairo_private uint16_t |