diff options
Diffstat (limited to 'src/ml_cairo_matrix.c')
-rw-r--r-- | src/ml_cairo_matrix.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/ml_cairo_matrix.c b/src/ml_cairo_matrix.c index 17ecff5..8ae5aa1 100644 --- a/src/ml_cairo_matrix.c +++ b/src/ml_cairo_matrix.c @@ -95,16 +95,19 @@ ml_cairo_matrix_rotate (value m, value a) CAMLprim value ml_cairo_matrix_invert (value m) { + cairo_status_t st; #ifndef ARCH_ALIGN_DOUBLE CAMLparam1(m); value v = cairo_matrix_alloc(); cairo_copy_matrix (v, m); - cairo_matrix_invert (cairo_matrix_t_val (v)); + st = cairo_matrix_invert (cairo_matrix_t_val (v)); + cairo_treat_status (st); CAMLreturn (v); #else cairo_matrix_t mat; ml_convert_cairo_matrix_in (m, &mat); - cairo_matrix_invert (&mat); + st = cairo_matrix_invert (&mat); + cairo_treat_status (st); return ml_convert_cairo_matrix_out (&mat); #endif } |