From e46dc9e17a6f6737d5624dbcdd3c42c2353a72f1 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Fri, 18 Feb 2011 19:51:44 +0100 Subject: [PATCH] arc: Handle radius == 0 the same no matter the arc direction Commit a0ea0b63fdd38a73d6696da5cd4800d9a7289240 fixed cairo_arc() but did not apply the same patch to cairo_arc_negative(). This patch fixes that oversight. --- src/cairo.c | 7 ++++++- test/Makefile.sources | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/cairo.c b/src/cairo.c index 73dbaeefb..8c19cd11b 100644 --- a/src/cairo.c +++ b/src/cairo.c @@ -1904,7 +1904,12 @@ cairo_arc_negative (cairo_t *cr, return; /* Do nothing, successfully, if radius is <= 0 */ - if (radius <= 0.0) + if (radius <= 0.0) { + cairo_line_to (cr, xc, yc); /* might become a move_to */ + cairo_line_to (cr, xc, yc); + return; + } + return; if (angle2 > angle1) { diff --git a/test/Makefile.sources b/test/Makefile.sources index e88c85cc5..207dcd063 100644 --- a/test/Makefile.sources +++ b/test/Makefile.sources @@ -11,6 +11,7 @@ test_sources = \ alpha-similar.c \ arc-infinite-loop.c \ arc-looping-dash.c \ + arc-negative.c \ api-special-cases.c \ big-line.c \ big-trap.c \