mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-05-09 07:18:04 +02:00
[test/device-offset-positive] Propagate errors.
Use cairo_get_target() to propagate errors from the secondary context.
This commit is contained in:
parent
594fa0836f
commit
9ab296123e
1 changed files with 6 additions and 8 deletions
|
|
@ -64,23 +64,21 @@ draw (cairo_t *cr, int width, int height)
|
|||
cairo_surface_get_content (target),
|
||||
SIZE / 2, SIZE / 2);
|
||||
cr2 = cairo_create (surface);
|
||||
cairo_surface_destroy (surface);
|
||||
|
||||
cairo_set_source_rgb (cr2, 1, 0, 0); /* red */
|
||||
draw_square (cr2);
|
||||
|
||||
cairo_destroy (cr2);
|
||||
|
||||
cairo_surface_set_device_offset (surface, + SIZE / 2, + SIZE / 2);
|
||||
|
||||
/* Finally, copy the offset surface to the original destination.
|
||||
* The final result should be a blue square with the upper-left
|
||||
* quarter red. */
|
||||
* The final result should be a blue square with the upper-left
|
||||
* quarter red. */
|
||||
surface = cairo_surface_reference (cairo_get_target (cr2));
|
||||
cairo_destroy (cr2);
|
||||
cairo_surface_set_device_offset (surface, + SIZE / 2, + SIZE / 2);
|
||||
cairo_set_source_surface (cr, surface, SIZE / 2, SIZE / 2);
|
||||
|
||||
cairo_paint (cr);
|
||||
|
||||
cairo_surface_destroy (surface);
|
||||
|
||||
return CAIRO_TEST_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue