summaryrefslogtreecommitdiff
path: root/src/cairo-array.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2007-10-04 00:38:12 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2007-10-04 00:42:30 +0100
commit8ad56b308ae8bbecfe9873c21551a6d4b2302420 (patch)
treea9c8791e8c30f70fc24a1b1ade069e54c23d98be /src/cairo-array.c
parent66664596559c55913fb0b9c8784fe8ab862c217b (diff)
downloadcairo-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.c6
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;
}