summaryrefslogtreecommitdiff
path: root/src/cairo-path-fill.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2008-12-09 20:15:34 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2008-12-12 11:11:48 +0000
commit68b29cafa597128e7cae86608e04ecae6070dad9 (patch)
tree853187df50aa7d02492914ba6a574b2d854fe9ab /src/cairo-path-fill.c
parent2f3905dec38a710234aba30e1983b80ea3066a50 (diff)
downloadcairo-68b29cafa597128e7cae86608e04ecae6070dad9.tar.gz
[spline] Propagate errors during add point.
Yikes! The callback could fail so we need to propagate the error status.
Diffstat (limited to 'src/cairo-path-fill.c')
-rw-r--r--src/cairo-path-fill.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/src/cairo-path-fill.c b/src/cairo-path-fill.c
index 7af91d200..089232d43 100644
--- a/src/cairo-path-fill.c
+++ b/src/cairo-path-fill.c
@@ -122,19 +122,14 @@ _cairo_filler_curve_to (void *closure,
cairo_spline_t spline;
if (! _cairo_spline_init (&spline,
- (cairo_add_point_func_t) _cairo_polygon_line_to,
- &filler->polygon,
+ _cairo_filler_line_to,
+ filler,
&filler->current_point, b, c, d))
{
return CAIRO_STATUS_SUCCESS;
}
- _cairo_spline_decompose (&spline, filler->tolerance);
- _cairo_spline_fini (&spline);
-
- filler->current_point = *d;
-
- return CAIRO_STATUS_SUCCESS;
+ return _cairo_spline_decompose (&spline, filler->tolerance);
}
static cairo_status_t