From b235f6d80e5c9d1beb7e02fb444d72f0475555d2 Mon Sep 17 00:00:00 2001 From: Sebastian Rasmussen Date: Wed, 28 Jun 2017 01:56:57 +0800 Subject: pdf: Drop object upon error while renumbering objects. --- source/pdf/pdf-write.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/source/pdf/pdf-write.c b/source/pdf/pdf-write.c index 5e80cfa1..a70addad 100644 --- a/source/pdf/pdf-write.c +++ b/source/pdf/pdf-write.c @@ -859,8 +859,12 @@ static void renumberobjs(fz_context *ctx, pdf_document *doc, pdf_write_state *op if (pdf_is_indirect(ctx, obj)) { obj = pdf_new_indirect(ctx, doc, to, 0); - pdf_update_object(ctx, doc, num, obj); - pdf_drop_obj(ctx, obj); + fz_try(ctx) + pdf_update_object(ctx, doc, num, obj); + fz_always(ctx) + pdf_drop_obj(ctx, obj); + fz_catch(ctx) + fz_rethrow(ctx); } else { -- cgit v1.2.3