diff options
author | Sebastian Rasmussen <sebras@gmail.com> | 2017-06-28 01:56:38 +0800 |
---|---|---|
committer | Sebastian Rasmussen <sebras@gmail.com> | 2017-09-07 23:45:39 +0800 |
commit | fe82c2d5c3d6128de511093fc4b8eaf47096653c (patch) | |
tree | f7963283a3acfdc85bb41dfe40f674a9d1194368 /source/pdf/pdf-parse.c | |
parent | 8cb0a389794356d7b6624f78365a5e92efdeb8e8 (diff) | |
download | mupdf-fe82c2d5c3d6128de511093fc4b8eaf47096653c.tar.xz |
Use dict_put_drop/array_push_drop wherever possible.
Diffstat (limited to 'source/pdf/pdf-parse.c')
-rw-r--r-- | source/pdf/pdf-parse.c | 49 |
1 files changed, 12 insertions, 37 deletions
diff --git a/source/pdf/pdf-parse.c b/source/pdf/pdf-parse.c index e4715a26..92d0b423 100644 --- a/source/pdf/pdf-parse.c +++ b/source/pdf/pdf-parse.c @@ -341,16 +341,12 @@ pdf_parse_array(fz_context *ctx, pdf_document *doc, fz_stream *file, pdf_lexbuf if (n > 0) { obj = pdf_new_int_offset(ctx, doc, a); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); } if (n > 1) { obj = pdf_new_int_offset(ctx, doc, b); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); } n = 0; } @@ -358,9 +354,7 @@ pdf_parse_array(fz_context *ctx, pdf_document *doc, fz_stream *file, pdf_lexbuf if (tok == PDF_TOK_INT && n == 2) { obj = pdf_new_int_offset(ctx, doc, a); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); a = b; n --; } @@ -383,61 +377,43 @@ pdf_parse_array(fz_context *ctx, pdf_document *doc, fz_stream *file, pdf_lexbuf if (n != 2) fz_throw(ctx, FZ_ERROR_SYNTAX, "cannot parse indirect reference in array"); obj = pdf_new_indirect(ctx, doc, a, b); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); n = 0; break; case PDF_TOK_OPEN_ARRAY: obj = pdf_parse_array(ctx, doc, file, buf); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; case PDF_TOK_OPEN_DICT: obj = pdf_parse_dict(ctx, doc, file, buf); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; case PDF_TOK_NAME: obj = pdf_new_name(ctx, doc, buf->scratch); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; case PDF_TOK_REAL: obj = pdf_new_real(ctx, doc, buf->f); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; case PDF_TOK_STRING: obj = pdf_new_string(ctx, doc, buf->scratch, buf->len); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; case PDF_TOK_TRUE: obj = pdf_new_bool(ctx, doc, 1); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; case PDF_TOK_FALSE: obj = pdf_new_bool(ctx, doc, 0); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; case PDF_TOK_NULL: obj = pdf_new_null(ctx, doc); - pdf_array_push(ctx, ary, obj); - pdf_drop_obj(ctx, obj); - obj = NULL; + pdf_array_push_drop(ctx, ary, obj); break; default: @@ -449,7 +425,6 @@ end: } fz_catch(ctx) { - pdf_drop_obj(ctx, obj); pdf_drop_obj(ctx, ary); fz_rethrow(ctx); } |