mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-05-05 18:08:03 +02:00
pdf: Cleanup local reference to source on error paths.
This commit is contained in:
parent
ba48edcd86
commit
4a181ebac4
1 changed files with 2 additions and 0 deletions
|
|
@ -1150,6 +1150,7 @@ _cairo_pdf_surface_add_source_surface (cairo_pdf_surface_t *surface,
|
|||
src_surface.surface = cairo_surface_reference (source);
|
||||
surface_entry->surface_res = _cairo_pdf_surface_new_object (surface);
|
||||
if (surface_entry->surface_res.id == 0) {
|
||||
cairo_surface_destroy (source);
|
||||
free (surface_entry);
|
||||
return _cairo_error (CAIRO_STATUS_NO_MEMORY);
|
||||
}
|
||||
|
|
@ -1159,6 +1160,7 @@ _cairo_pdf_surface_add_source_surface (cairo_pdf_surface_t *surface,
|
|||
|
||||
status = _cairo_array_append (&surface->page_surfaces, &src_surface);
|
||||
if (unlikely (status)) {
|
||||
cairo_surface_destroy (source);
|
||||
free (surface_entry);
|
||||
return status;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue