aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFJob_argv.cc
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2022-01-26 01:01:10 +0100
committerJay Berkenbilt <ejb@ql.org>2022-01-30 19:11:03 +0100
commit41c5af8f2664cef36d4a1253ba5251603a937605 (patch)
tree60109db66fc61d98eb833eef252ec7e9ac54fbef /libqpdf/QPDFJob_argv.cc
parent9373881cca0c781c66b2b50b962bdbc26364abe5 (diff)
downloadqpdf-41c5af8f2664cef36d4a1253ba5251603a937605.tar.zst
QPDFJob: convert pages
Diffstat (limited to 'libqpdf/QPDFJob_argv.cc')
-rw-r--r--libqpdf/QPDFJob_argv.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/libqpdf/QPDFJob_argv.cc b/libqpdf/QPDFJob_argv.cc
index a32818ba..063f77d8 100644
--- a/libqpdf/QPDFJob_argv.cc
+++ b/libqpdf/QPDFJob_argv.cc
@@ -46,6 +46,7 @@ namespace
std::shared_ptr<QPDFJob::Config> c_main;
std::shared_ptr<QPDFJob::CopyAttConfig> c_copy_att;
std::shared_ptr<QPDFJob::AttConfig> c_att;
+ std::shared_ptr<QPDFJob::PagesConfig> c_pages;
std::vector<char*> accumulated_args; // points to member in ap
char* pages_password;
};
@@ -310,6 +311,7 @@ ArgParser::argPages()
usage("the --pages may only be specified one time");
}
this->accumulated_args.clear();
+ this->c_pages = c_main->pages();
this->ap.selectOptionTable(O_PAGES);
}
@@ -402,7 +404,7 @@ ArgParser::argPagesPositional(char* arg)
{
range = "1-z";
}
- o.page_specs.push_back(QPDFJob::PageSpec(file, this->pages_password, range));
+ this->c_pages->pageSpec(file, this->pages_password, range);
this->accumulated_args.clear();
this->pages_password = nullptr;
if (next_file != nullptr)
@@ -415,10 +417,8 @@ void
ArgParser::argEndPages()
{
argPagesPositional(nullptr);
- if (o.page_specs.empty())
- {
- usage("--pages: no page specifications given");
- }
+ c_pages->end();
+ c_pages = nullptr;
}
void