Commit e7dad11bd48ee6fc4d2f7ac2de1895f753b48c02

Authored by m-holger
1 parent 32aa5165

Refactor `QPDFJob::validateUnderOverlay`: reduce redundant variable usage, strea…

…mline numeric range parsing, and clean up obsolete test coverage entries.
libqpdf/QPDFJob.cc
@@ -1884,25 +1884,22 @@ QPDFJob::processInputSource( @@ -1884,25 +1884,22 @@ QPDFJob::processInputSource(
1884 void 1884 void
1885 QPDFJob::validateUnderOverlay(QPDF& pdf, UnderOverlay* uo) 1885 QPDFJob::validateUnderOverlay(QPDF& pdf, UnderOverlay* uo)
1886 { 1886 {
1887 - auto& main_pdh = pdf.pages();  
1888 - int main_npages = QIntC::to_int(main_pdh.getAllPages().size());  
1889 processFile(uo->pdf, uo->filename.data(), uo->password.data(), true, false); 1887 processFile(uo->pdf, uo->filename.data(), uo->password.data(), true, false);
1890 - QPDFPageDocumentHelper uo_pdh(*(uo->pdf));  
1891 - int uo_npages = QIntC::to_int(uo_pdh.getAllPages().size());  
1892 try { 1888 try {
1893 - uo->to_pagenos = QUtil::parse_numrange(uo->to_nr.c_str(), main_npages); 1889 + uo->to_pagenos =
  1890 + QUtil::parse_numrange(uo->to_nr.data(), static_cast<int>(pdf.getAllPages().size()));
1894 } catch (std::runtime_error& e) { 1891 } catch (std::runtime_error& e) {
1895 throw std::runtime_error( 1892 throw std::runtime_error(
1896 "parsing numeric range for " + uo->which + " \"to\" pages: " + e.what()); 1893 "parsing numeric range for " + uo->which + " \"to\" pages: " + e.what());
1897 } 1894 }
1898 try { 1895 try {
1899 if (uo->from_nr.empty()) { 1896 if (uo->from_nr.empty()) {
1900 - QTC::TC("qpdf", "QPDFJob from_nr from repeat_nr");  
1901 uo->from_nr = uo->repeat_nr; 1897 uo->from_nr = uo->repeat_nr;
1902 } 1898 }
1903 - uo->from_pagenos = QUtil::parse_numrange(uo->from_nr.c_str(), uo_npages); 1899 + int uo_npages = static_cast<int>(uo->pdf->getAllPages().size());
  1900 + uo->from_pagenos = QUtil::parse_numrange(uo->from_nr.data(), uo_npages);
1904 if (!uo->repeat_nr.empty()) { 1901 if (!uo->repeat_nr.empty()) {
1905 - uo->repeat_pagenos = QUtil::parse_numrange(uo->repeat_nr.c_str(), uo_npages); 1902 + uo->repeat_pagenos = QUtil::parse_numrange(uo->repeat_nr.data(), uo_npages);
1906 } 1903 }
1907 } catch (std::runtime_error& e) { 1904 } catch (std::runtime_error& e) {
1908 throw std::runtime_error( 1905 throw std::runtime_error(
qpdf/qpdf.testcov
@@ -338,7 +338,6 @@ QPDFPageDocumentHelper ignore annotation with no appearance 0 @@ -338,7 +338,6 @@ QPDFPageDocumentHelper ignore annotation with no appearance 0
338 QPDFFormFieldObjectHelper replaced BMC at EOF 0 338 QPDFFormFieldObjectHelper replaced BMC at EOF 0
339 QPDFFormFieldObjectHelper fallback Tf 0 339 QPDFFormFieldObjectHelper fallback Tf 0
340 QPDFPageObjectHelper copy shared attribute 1 340 QPDFPageObjectHelper copy shared attribute 1
341 -QPDFJob from_nr from repeat_nr 0  
342 QPDF resolve duplicated page object 0 341 QPDF resolve duplicated page object 0
343 QPDF handle direct page object 0 342 QPDF handle direct page object 0
344 QPDF missing mediabox 0 343 QPDF missing mediabox 0