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-win32-surface.c | |
parent | 66664596559c55913fb0b9c8784fe8ab862c217b (diff) |
[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-win32-surface.c')
-rw-r--r-- | src/cairo-win32-surface.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/cairo-win32-surface.c b/src/cairo-win32-surface.c index 1b1a2ff8..4b27a8db 100644 --- a/src/cairo-win32-surface.c +++ b/src/cairo-win32-surface.c @@ -187,8 +187,10 @@ _create_dc_and_bitmap (cairo_win32_surface_t *surface, if (num_palette > 2) { bitmap_info = _cairo_malloc_ab_plus_c (num_palette, sizeof(RGBQUAD), sizeof(BITMAPINFOHEADER)); - if (!bitmap_info) + if (!bitmap_info) { + _cairo_error (CAIRO_STATUS_NO_MEMORY); return CAIRO_STATUS_NO_MEMORY; + } } else { bitmap_info = (BITMAPINFO *)&bmi_stack; } @@ -1467,6 +1469,7 @@ _cairo_win32_surface_set_clip_region (void *abstract_surface, data = malloc (data_size); if (!data) { _cairo_region_boxes_fini (region, boxes); + _cairo_error (CAIRO_STATUS_NO_MEMORY); return CAIRO_STATUS_NO_MEMORY; } rects = (RECT *)data->Buffer; |