From 649ed3773a9fef8712733fbdcc9d09a5bae62f99 Mon Sep 17 00:00:00 2001 From: René Neumann Date: Thu, 11 Aug 2011 19:41:33 +0200 Subject: Patched cairo --- x11-libs/cairo/files/cairo-1.10.2-interix.patch | 36 +++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 x11-libs/cairo/files/cairo-1.10.2-interix.patch (limited to 'x11-libs/cairo/files/cairo-1.10.2-interix.patch') 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 +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 + Signed-off-by: Chris Wilson + +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 -- cgit v1.2.3-70-g09d2