2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-05-31 09:20:52 +00:00

QPDFJob: convert Under/Overlay ranges to strings

This commit is contained in:
Jay Berkenbilt 2022-01-22 18:46:46 -05:00
parent e48bfce930
commit 88891a75a2
2 changed files with 9 additions and 8 deletions

View File

@ -159,9 +159,9 @@ class QPDFJob
std::string which; std::string which;
char const* filename; char const* filename;
char const* password; char const* password;
char const* to_nr; std::string to_nr;
char const* from_nr; std::string from_nr;
char const* repeat_nr; std::string repeat_nr;
std::shared_ptr<QPDF> pdf; std::shared_ptr<QPDF> pdf;
std::vector<int> to_pagenos; std::vector<int> to_pagenos;
std::vector<int> from_pagenos; std::vector<int> from_pagenos;

View File

@ -1945,7 +1945,7 @@ QPDFJob::validateUnderOverlay(QPDF& pdf, QPDFJob::UnderOverlay* uo)
int uo_npages = QIntC::to_int(uo_pdh.getAllPages().size()); int uo_npages = QIntC::to_int(uo_pdh.getAllPages().size());
try try
{ {
uo->to_pagenos = QUtil::parse_numrange(uo->to_nr, main_npages); uo->to_pagenos = QUtil::parse_numrange(uo->to_nr.c_str(), main_npages);
} }
catch (std::runtime_error& e) catch (std::runtime_error& e)
{ {
@ -1955,16 +1955,17 @@ QPDFJob::validateUnderOverlay(QPDF& pdf, QPDFJob::UnderOverlay* uo)
} }
try try
{ {
if (0 == strlen(uo->from_nr)) if (uo->from_nr.empty())
{ {
QTC::TC("qpdf", "qpdf from_nr from repeat_nr"); QTC::TC("qpdf", "qpdf from_nr from repeat_nr");
uo->from_nr = uo->repeat_nr; uo->from_nr = uo->repeat_nr;
} }
uo->from_pagenos = QUtil::parse_numrange(uo->from_nr, uo_npages); uo->from_pagenos =
if (strlen(uo->repeat_nr)) QUtil::parse_numrange(uo->from_nr.c_str(), uo_npages);
if (! uo->repeat_nr.empty())
{ {
uo->repeat_pagenos = uo->repeat_pagenos =
QUtil::parse_numrange(uo->repeat_nr, uo_npages); QUtil::parse_numrange(uo->repeat_nr.c_str(), uo_npages);
} }
} }
catch (std::runtime_error& e) catch (std::runtime_error& e)