summaryrefslogtreecommitdiff
path: root/src/cairo-path-stroke.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2007-10-11 14:11:06 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2007-10-11 15:01:14 +0100
commitb7adcf67f8c640c146bada1fbeaa1cda1cfa825a (patch)
tree59abf8fd2114c60b3b4ac0c754838002afdce6ee /src/cairo-path-stroke.c
parent0222c02d9525dc8ff1ad5a2bea46e623d9db1e43 (diff)
[cairo-path-stroke] Jump to cleanup after error.
Incorrect early return in _cairo_stroker_curve_to() after _cairo_stroker_join() resulted in leaking the local spline and pen.
Diffstat (limited to 'src/cairo-path-stroke.c')
-rw-r--r--src/cairo-path-stroke.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cairo-path-stroke.c b/src/cairo-path-stroke.c
index ce523b06..a2fed557 100644
--- a/src/cairo-path-stroke.c
+++ b/src/cairo-path-stroke.c
@@ -816,7 +816,7 @@ _cairo_stroker_curve_to (void *closure,
if (stroker->has_current_face) {
status = _cairo_stroker_join (stroker, &stroker->current_face, &start);
if (status)
- return status;
+ goto CLEANUP_PEN;
} else if (!stroker->has_first_face) {
stroker->first_face = start;
stroker->has_first_face = TRUE;