summaryrefslogtreecommitdiff
path: root/source/pdf/pdf-op-run.c
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2015-01-20 15:27:34 +0100
committerTor Andersson <tor.andersson@artifex.com>2015-02-17 16:31:34 +0100
commitb9d11456411907e9add8d91b02d67842990c2952 (patch)
treeca29439a35e83948645481cf0d0dfca445bf8b03 /source/pdf/pdf-op-run.c
parent4fe9caafead64704a16c7093b72115893be3087f (diff)
downloadmupdf-b9d11456411907e9add8d91b02d67842990c2952.tar.xz
Reference count fz_path and fz_text.
Disallow modification of shared fz_path and fz_text objects. They should follow a create once, consume often pattern, and as such should be immutable once created.
Diffstat (limited to 'source/pdf/pdf-op-run.c')
-rw-r--r--source/pdf/pdf-op-run.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/source/pdf/pdf-op-run.c b/source/pdf/pdf-op-run.c
index 73f89fd3..52000b40 100644
--- a/source/pdf/pdf-op-run.c
+++ b/source/pdf/pdf-op-run.c
@@ -920,7 +920,7 @@ pdf_show_path(pdf_csi *csi, pdf_run_state *pr, int doclose, int dofill, int dost
}
fz_always(ctx)
{
- fz_free_path(ctx, path);
+ fz_drop_path(ctx, path);
}
fz_catch(ctx)
{
@@ -1051,7 +1051,7 @@ pdf_flush_text(pdf_csi *csi, pdf_run_state *pr)
}
fz_always(ctx)
{
- fz_free_text(ctx, text);
+ fz_drop_text(ctx, text);
}
fz_catch(ctx)
{
@@ -2642,8 +2642,8 @@ static void free_processor_normal(pdf_csi *csi, void *state)
while (pr->gstate[0].clip_depth--)
fz_pop_clip(pr->dev);
- if (pr->path) fz_free_path(ctx, pr->path);
- if (pr->text) fz_free_text(ctx, pr->text);
+ if (pr->path) fz_drop_path(ctx, pr->path);
+ if (pr->text) fz_drop_text(ctx, pr->text);
fz_free(ctx, pr->gstate);
fz_free(ctx, pr);
@@ -2849,7 +2849,7 @@ pdf_process *pdf_process_run(pdf_process *process, fz_device *dev, const fz_matr
}
fz_catch(ctx)
{
- fz_free_path(ctx, pr->path);
+ fz_drop_path(ctx, pr->path);
fz_free(ctx, pr);
fz_rethrow(ctx);
}