[cairo-commit] src/cairo-hull.c
Chris Wilson
ickle at kemper.freedesktop.org
Tue Apr 13 09:56:37 PDT 2010
src/cairo-hull.c | 7 +++++++
1 file changed, 7 insertions(+)
New commits:
commit 8afd4e4c3db53159d1e5b6f13d3355cb5fb1750b
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Tue Apr 13 17:52:19 2010 +0100
hull: _cairo_hull_vertex_compare() return 0 for identical elements
Andreas Falkenhahn reported a bizarre situation with some
implementations of qsort that actually compare the same elements and
require the comparator to return 0. So be it.
Reported-by: Andreas Falkenhahn <andreas at airsoftsoftwair.de>
diff --git a/src/cairo-hull.c b/src/cairo-hull.c
index abd8dbf..15b6c00 100644
--- a/src/cairo-hull.c
+++ b/src/cairo-hull.c
@@ -95,6 +95,13 @@ _cairo_hull_vertex_compare (const void *av, const void *bv)
cairo_hull_t *b = (cairo_hull_t *) bv;
int ret;
+ /* Some libraries are reported to actually compare identical
+ * pointers and require the result to be 0. This is the crazy world we
+ * have to live in.
+ */
+ if (a == b)
+ return 0;
+
ret = _cairo_slope_compare (&a->slope, &b->slope);
/*
More information about the cairo-commit
mailing list