diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2007-10-04 00:38:12 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2007-10-04 00:42:30 +0100 |
commit | 8ad56b308ae8bbecfe9873c21551a6d4b2302420 (patch) | |
tree | a9c8791e8c30f70fc24a1b1ade069e54c23d98be /src/cairo-array.c | |
parent | 66664596559c55913fb0b9c8784fe8ab862c217b (diff) | |
download | cairo-8ad56b308ae8bbecfe9873c21551a6d4b2302420.tar.gz |
[malloc/error] Add call to _cairo_error() after a failed malloc.
Blitz all allocations to ensure that they raise a
_cairo_error(CAIRO_STATUS_NO_MEMORY) on failure.
Diffstat (limited to 'src/cairo-array.c')
-rw-r--r-- | src/cairo-array.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/cairo-array.c b/src/cairo-array.c index 3525c78d6..58c699e08 100644 --- a/src/cairo-array.c +++ b/src/cairo-array.c @@ -132,8 +132,11 @@ _cairo_array_grow_by (cairo_array_t *array, int additional) if (array->elements == NULL) { array->elements = malloc (sizeof (char *)); - if (array->elements == NULL) + if (array->elements == NULL) { + _cairo_error (CAIRO_STATUS_NO_MEMORY); return CAIRO_STATUS_NO_MEMORY; + } + *array->elements = NULL; } @@ -143,6 +146,7 @@ _cairo_array_grow_by (cairo_array_t *array, int additional) if (new_elements == NULL) { array->size = old_size; + _cairo_error (CAIRO_STATUS_NO_MEMORY); return CAIRO_STATUS_NO_MEMORY; } |