From 0c7c7e4ba485fd39f5b6d41fa2924c607d2eeda0 Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sat, 25 Jun 2022 13:55:45 -0400 Subject: Track whether certain page modifying methods have been called We need to know whether pushInheritedAttributesToPage or getAllPages have been called when generating JSON output. When reading the JSON back in, we have to call the same methods so that object numbers will line up properly. --- libqpdf/QPDF.cc | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'libqpdf/QPDF.cc') diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index 2d92bf1d..b51c5571 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -222,6 +222,8 @@ QPDF::Members::Members() : attempt_recovery(true), encp(new EncryptionParameters), pushed_inherited_attributes_to_pages(false), + ever_pushed_inherited_attributes_to_pages(false), + ever_called_get_all_pages(false), copied_stream_data_provider(0), reconstructed_xref(false), fixed_dangling_refs(false), @@ -2879,3 +2881,15 @@ QPDF::stopOnError(std::string const& message) this->m->file->getLastOffset(), message); } + +bool +QPDF::everCalledGetAllPages() const +{ + return this->m->ever_called_get_all_pages; +} + +bool +QPDF::everPushedInheritedAttributesToPages() const +{ + return this->m->ever_pushed_inherited_attributes_to_pages; +} -- cgit v1.2.3-70-g09d2