[cairo-commit] src/cairo-ps-surface.c src/cairo-ps-surface-private.h
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Sun Dec 2 11:02:31 UTC 2018
src/cairo-ps-surface-private.h | 2 ++
src/cairo-ps-surface.c | 5 +++++
2 files changed, 7 insertions(+)
New commits:
commit 3c4570f8f49655735e13b35295ae3bc3ec81d027
Author: Adrian Johnson <ajohnson at redneon.com>
Date: Sun Dec 2 19:44:03 2018 +1030
ps: fix invalid matrix in eps embedding
diff --git a/src/cairo-ps-surface-private.h b/src/cairo-ps-surface-private.h
index e1681c889..f18403190 100644
--- a/src/cairo-ps-surface-private.h
+++ b/src/cairo-ps-surface-private.h
@@ -56,6 +56,8 @@ typedef struct _cairo_ps_form {
cairo_bool_t is_image;
int id;
cairo_surface_t *src_surface;
+ cairo_rectangle_int_t src_surface_extents;
+ cairo_bool_t src_surface_bounded;
cairo_filter_t filter;
/* Union of source extents required for all operations using this form */
diff --git a/src/cairo-ps-surface.c b/src/cairo-ps-surface.c
index 0a17b81af..c4643f824 100644
--- a/src/cairo-ps-surface.c
+++ b/src/cairo-ps-surface.c
@@ -3548,6 +3548,8 @@ _cairo_ps_surface_use_form (cairo_ps_surface_t *surface,
source_entry->unique_id = unique_id;
source_entry->id = surface->num_forms++;
source_entry->src_surface = cairo_surface_reference (params->src_surface);
+ source_entry->src_surface_extents = *params->src_surface_extents;
+ source_entry->src_surface_bounded = params->src_surface_bounded;
source_entry->required_extents = *params->src_op_extents;
source_entry->filter = params->filter;
source_entry->is_image = params->is_image;
@@ -3726,11 +3728,14 @@ _cairo_ps_form_emit (void *entry, void *closure)
params.src_surface = form->src_surface;
params.op = CAIRO_OPERATOR_OVER;
+ params.src_surface_extents = &form->src_surface_extents;
+ params.src_surface_bounded = form->src_surface_bounded;
params.src_op_extents = &form->required_extents;
params.filter = form->filter;
params.stencil_mask = FALSE;
params.is_image = form->is_image;
params.approx_size = 0;
+ params.eod_count = 0;
_cairo_output_stream_printf (surface->final_stream,
"%%%%BeginResource: form cairoform-%d\n",
More information about the cairo-commit
mailing list