summaryrefslogtreecommitdiff
path: root/source/fitz/outline.c
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2015-10-02 15:00:56 +0100
committerRobin Watts <robin.watts@artifex.com>2015-10-02 15:21:43 +0100
commitd203b82976bbcfc41995c2a0d05eec467112297b (patch)
treecc567ef17b88fb3de8eecc7737c55a1541f730a3 /source/fitz/outline.c
parent6d57575a362af052cbc43f00fba5d853bc81767c (diff)
downloadmupdf-d203b82976bbcfc41995c2a0d05eec467112297b.tar.xz
Reference count fz_outline struct.
Diffstat (limited to 'source/fitz/outline.c')
-rw-r--r--source/fitz/outline.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/source/fitz/outline.c b/source/fitz/outline.c
index 0cd1890d..257c44c1 100644
--- a/source/fitz/outline.c
+++ b/source/fitz/outline.c
@@ -1,9 +1,23 @@
#include "mupdf/fitz.h"
+fz_outline *
+fz_new_outline(fz_context *ctx)
+{
+ fz_outline *outline = fz_malloc_struct(ctx, fz_outline);
+ outline->refs = 1;
+ return outline;
+}
+
+fz_outline *
+fz_keep_outline(fz_context *ctx, fz_outline *outline)
+{
+ return fz_keep_imp(ctx, outline, &outline->refs);
+}
+
void
fz_drop_outline(fz_context *ctx, fz_outline *outline)
{
- while (outline)
+ while (fz_drop_imp(ctx, outline, &outline->refs))
{
fz_outline *next = outline->next;
fz_drop_outline(ctx, outline->down);