summaryrefslogtreecommitdiff
path: root/src/cairo-user-font.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2008-09-02 09:12:44 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2008-09-02 09:17:33 +0100
commit38f779afcb84d48a1a146eec11a6db5c484d3578 (patch)
treec11784ed81a3fb84a62c38378046e4abe154bc92 /src/cairo-user-font.c
parent83f390cfc5f594444413dfed3346e8412cb4c973 (diff)
downloadcairo-38f779afcb84d48a1a146eec11a6db5c484d3578.tar.gz
[user-font] Propagate status return.
An error return possible went unpropagated - fix that. Also whilst in the vicinity avoid the non-constant initialisation of the local variable before the antiquated compilers moan.
Diffstat (limited to 'src/cairo-user-font.c')
-rw-r--r--src/cairo-user-font.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/cairo-user-font.c b/src/cairo-user-font.c
index ebac53bdb..f49943b68 100644
--- a/src/cairo-user-font.c
+++ b/src/cairo-user-font.c
@@ -147,8 +147,11 @@ _cairo_user_scaled_glyph_init (void *abstract_font,
cairo_box_t bbox;
double x1, y1, x2, y2;
double x_scale, y_scale;
- cairo_surface_t *null_surface = _cairo_null_surface_create (cairo_surface_get_content (meta_surface));
- cairo_surface_t *analysis_surface = _cairo_analysis_surface_create (null_surface, -1, -1);
+ cairo_surface_t *null_surface;
+ cairo_surface_t *analysis_surface;
+
+ null_surface = _cairo_null_surface_create (cairo_surface_get_content (meta_surface));
+ analysis_surface = _cairo_analysis_surface_create (null_surface, -1, -1);
cairo_surface_destroy (null_surface);
_cairo_analysis_surface_set_ctm (analysis_surface, &scaled_font->extent_scale);
@@ -156,6 +159,9 @@ _cairo_user_scaled_glyph_init (void *abstract_font,
_cairo_analysis_surface_get_bounding_box (analysis_surface, &bbox);
cairo_surface_destroy (analysis_surface);
+ if (status)
+ return status;
+
_cairo_box_to_doubles (&bbox, &x1, &y1, &x2, &y2);
x_scale = scaled_font->extent_x_scale;