aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libqpdf/NNTree.cc5
-rw-r--r--libtests/nntree.cc34
-rw-r--r--qpdf/test_driver.cc28
-rw-r--r--qpdf/test_large_file.cc14
4 files changed, 41 insertions, 40 deletions
diff --git a/libqpdf/NNTree.cc b/libqpdf/NNTree.cc
index a888f42f..3ab18190 100644
--- a/libqpdf/NNTree.cc
+++ b/libqpdf/NNTree.cc
@@ -208,9 +208,8 @@ NNTreeIterator::resetLimits(
}
}
if (first.isInitialized() && last.isInitialized()) {
- auto limits = QPDFObjectHandle::newArray();
- limits.appendItem(first);
- limits.appendItem(last);
+ auto limits =
+ QPDFObjectHandle::newArray().appendItem(first).appendItem(last);
auto olimits = node.getKey("/Limits");
if (olimits.isArray() && (olimits.getArrayNItems() == 2)) {
auto ofirst = olimits.getArrayItem(0);
diff --git a/libtests/nntree.cc b/libtests/nntree.cc
index 31b1bd42..f999e2e7 100644
--- a/libtests/nntree.cc
+++ b/libtests/nntree.cc
@@ -62,13 +62,13 @@ test_bsearch()
auto mk = [&q](std::vector<int> const& v) {
auto nums = QPDFObjectHandle::newArray();
for (auto i : v) {
- nums.appendItem(QPDFObjectHandle::newInteger(i));
- nums.appendItem(QPDFObjectHandle::newString(
- "-" + QUtil::int_to_string(i) + "-"));
+ nums.appendItem(QPDFObjectHandle::newInteger(i))
+ .appendItem(QPDFObjectHandle::newString(
+ "-" + QUtil::int_to_string(i) + "-"));
}
auto limits = QPDFObjectHandle::newArray();
- limits.appendItem(QPDFObjectHandle::newInteger(v.at(0)));
- limits.appendItem(QPDFObjectHandle::newInteger(v.at(v.size() - 1)));
+ limits.appendItem(QPDFObjectHandle::newInteger(v.at(0)))
+ .appendItem(QPDFObjectHandle::newInteger(v.at(v.size() - 1)));
auto node = q.makeIndirectObject(QPDFObjectHandle::newDictionary());
node.replaceKey("/Nums", nums).replaceKey("/Limits", limits);
return node;
@@ -168,8 +168,8 @@ test_depth()
int val =
(((((i1 * NITEMS) + i2) * NITEMS) + i3) * NITEMS) + i4;
std::string str = QUtil::int_to_string(10 * val, 6);
- items.appendItem(QPDFObjectHandle::newString(str));
- items.appendItem(QPDFObjectHandle::newString("val " + str));
+ items.appendItem(QPDFObjectHandle::newString(str))
+ .appendItem(QPDFObjectHandle::newString("val " + str));
if (i4 == 0) {
first = str;
} else if (i4 == NITEMS - 1) {
@@ -178,21 +178,23 @@ test_depth()
}
auto limits = QPDFObjectHandle::newArray();
n3.replaceKey("/Limits", limits);
- limits.appendItem(QPDFObjectHandle::newString(first));
- limits.appendItem(QPDFObjectHandle::newString(last));
+ limits.appendItem(QPDFObjectHandle::newString(first))
+ .appendItem(QPDFObjectHandle::newString(last));
}
auto limits = QPDFObjectHandle::newArray();
n2.replaceKey("/Limits", limits);
- limits.appendItem(
- k2.getArrayItem(0).getKey("/Limits").getArrayItem(0));
- limits.appendItem(
- k2.getArrayItem(NITEMS - 1).getKey("/Limits").getArrayItem(1));
+ limits
+ .appendItem(
+ k2.getArrayItem(0).getKey("/Limits").getArrayItem(0))
+ .appendItem(k2.getArrayItem(NITEMS - 1)
+ .getKey("/Limits")
+ .getArrayItem(1));
}
auto limits = QPDFObjectHandle::newArray();
n1.replaceKey("/Limits", limits);
- limits.appendItem(k1.getArrayItem(0).getKey("/Limits").getArrayItem(0));
- limits.appendItem(
- k1.getArrayItem(NITEMS - 1).getKey("/Limits").getArrayItem(1));
+ limits.appendItem(k1.getArrayItem(0).getKey("/Limits").getArrayItem(0))
+ .appendItem(
+ k1.getArrayItem(NITEMS - 1).getKey("/Limits").getArrayItem(1));
}
QPDFNameTreeObjectHelper nh(n0, q);
diff --git a/qpdf/test_driver.cc b/qpdf/test_driver.cc
index 03d5d57d..00d87d6a 100644
--- a/qpdf/test_driver.cc
+++ b/qpdf/test_driver.cc
@@ -912,10 +912,8 @@ test_24(QPDF& pdf, char const* arg2)
QPDFObjectHandle array1 = QPDFObjectHandle::newArray();
QPDFObjectHandle array2 = QPDFObjectHandle::newArray();
- array1.appendItem(res2);
- array1.appendItem(QPDFObjectHandle::newInteger(1));
- array2.appendItem(res1);
- array2.appendItem(QPDFObjectHandle::newInteger(2));
+ array1.appendItem(res2).appendItem(QPDFObjectHandle::newInteger(1));
+ array2.appendItem(res1).appendItem(QPDFObjectHandle::newInteger(2));
// Make sure trying to ask questions about a reserved object
// doesn't break it.
if (res1.isArray()) {
@@ -1087,12 +1085,11 @@ test_27(QPDF& pdf, char const* arg2)
pdf.getTrailer()
.replaceKey("/QTest", pdf.copyForeignObject(qtest))
.replaceKey("/QTest2", QPDFObjectHandle::newArray());
- pdf.getTrailer().getKey("/QTest2").appendItem(
- pdf.copyForeignObject(s1));
- pdf.getTrailer().getKey("/QTest2").appendItem(
- pdf.copyForeignObject(s2));
- pdf.getTrailer().getKey("/QTest2").appendItem(
- pdf.copyForeignObject(s3));
+ pdf.getTrailer()
+ .getKey("/QTest2")
+ .appendItem(pdf.copyForeignObject(s1))
+ .appendItem(pdf.copyForeignObject(s2))
+ .appendItem(pdf.copyForeignObject(s3));
}
QPDFWriter w(pdf, "a.pdf");
@@ -2099,10 +2096,13 @@ test_55(QPDF& pdf, char const* arg2)
std::vector<QPDFPageObjectHelper> pages =
QPDFPageDocumentHelper(pdf).getAllPages();
QPDFObjectHandle qtest = QPDFObjectHandle::newArray();
- for (std::vector<QPDFPageObjectHelper>::iterator iter = pages.begin();
- iter != pages.end();
- ++iter) {
- QPDFPageObjectHelper& ph(*iter);
+ for (auto& ph: pages) {
+ // Note: using fluent appendItem causes a test failure with
+ // MSVC 19.31.31107, which appears to evaluate the argument to
+ // the second appendItem before the first. Since these
+ // arguments have the side effect of creating objects, the
+ // object numbers end up being different even though the
+ // resulting file is semantically correct.
qtest.appendItem(ph.getFormXObjectForPage());
qtest.appendItem(ph.getFormXObjectForPage(false));
}
diff --git a/qpdf/test_large_file.cc b/qpdf/test_large_file.cc
index e264e831..32494426 100644
--- a/qpdf/test_large_file.cc
+++ b/qpdf/test_large_file.cc
@@ -199,18 +199,18 @@ create_pdf(char const* filename)
QPDFObjectHandle procset =
pdf.makeIndirectObject(QPDFObjectHandle::newArray());
- procset.appendItem(newName("/PDF"));
- procset.appendItem(newName("/Text"));
- procset.appendItem(newName("/ImageC"));
+ procset.appendItem(newName("/PDF"))
+ .appendItem(newName("/Text"))
+ .appendItem(newName("/ImageC"));
QPDFObjectHandle rfont = QPDFObjectHandle::newDictionary();
rfont.replaceKey("/F1", font);
QPDFObjectHandle mediabox = QPDFObjectHandle::newArray();
- mediabox.appendItem(newInteger(0));
- mediabox.appendItem(newInteger(0));
- mediabox.appendItem(newInteger(612));
- mediabox.appendItem(newInteger(792));
+ mediabox.appendItem(newInteger(0))
+ .appendItem(newInteger(0))
+ .appendItem(newInteger(612))
+ .appendItem(newInteger(792));
QPDFPageDocumentHelper dh(pdf);
for (size_t pageno = 1; pageno <= npages; ++pageno) {