aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFWriter.cc
diff options
context:
space:
mode:
authorm-holger <m-holger@kubitscheck.org>2022-01-26 09:00:23 +0100
committerJay Berkenbilt <jberkenbilt@users.noreply.github.com>2022-01-27 14:31:12 +0100
commit07db3200cb0ef058b8a66ece8d9757adfba49fd1 (patch)
tree084c94a5778581451bb42e5cd38fffeb36a12e2b /libqpdf/QPDFWriter.cc
parent710d2e54f0762b7702640766d33b7e0977ba69de (diff)
downloadqpdf-07db3200cb0ef058b8a66ece8d9757adfba49fd1.tar.zst
Remove some if statements and simplify some boolean expressions
Use QPDFObjectHandle::isNameAndEquals, isDictionaryOfType and isStreamOfType.
Diffstat (limited to 'libqpdf/QPDFWriter.cc')
-rw-r--r--libqpdf/QPDFWriter.cc20
1 files changed, 6 insertions, 14 deletions
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc
index 23beee32..e7fb9ad6 100644
--- a/libqpdf/QPDFWriter.cc
+++ b/libqpdf/QPDFWriter.cc
@@ -1241,9 +1241,7 @@ QPDFWriter::enqueueObject(QPDFObjectHandle object)
" another file.");
}
- if (this->m->qdf_mode &&
- object.isStream() && object.getDict().getKey("/Type").isName() &&
- (object.getDict().getKey("/Type").getName() == "/XRef"))
+ if (this->m->qdf_mode && object.isStreamOfType("/XRef"))
{
// As a special case, do not output any extraneous XRef
// streams in QDF mode. Doing so will confuse fix-qdf,
@@ -1474,8 +1472,7 @@ QPDFWriter::willFilterStream(QPDFObjectHandle stream,
QPDFObjGen old_og = stream.getObjGen();
QPDFObjectHandle stream_dict = stream.getDict();
- if (stream_dict.getKey("/Type").isName() &&
- (stream_dict.getKey("/Type").getName() == "/Metadata"))
+ if (stream_dict.isDictionaryOfType("/Metadata"))
{
is_metadata = true;
}
@@ -1691,11 +1688,8 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
QTC::TC("qpdf", "QPDFWriter preserve Extensions");
QPDFObjectHandle adbe = extensions.getKey("/ADBE");
if (adbe.isDictionary() &&
- adbe.hasKey("/BaseVersion") &&
- adbe.getKey("/BaseVersion").isName() &&
- (adbe.getKey("/BaseVersion").getName() ==
- "/" + this->m->final_pdf_version) &&
- adbe.hasKey("/ExtensionLevel") &&
+ adbe.getKey("/BaseVersion").isNameAndEquals(
+ "/" + this->m->final_pdf_version) &&
adbe.getKey("/ExtensionLevel").isInteger() &&
(adbe.getKey("/ExtensionLevel").getIntValue() ==
this->m->final_extension_level))
@@ -1764,7 +1758,7 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
for (int i = 0; i < filter.getArrayNItems(); ++i)
{
QPDFObjectHandle item = filter.getArrayItem(i);
- if (item.isName() && item.getName() == "/Crypt")
+ if (item.isNameAndEquals("/Crypt"))
{
idx = i;
break;
@@ -1802,9 +1796,7 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
writeString(QPDF_Name::normalizeName(key));
writeString(" ");
if (key == "/Contents" &&
- object.hasKey("/Type") &&
- object.getKey("/Type").isName() &&
- object.getKey("/Type").getName() == "/Sig" &&
+ object.isDictionaryOfType("/Sig") &&
object.hasKey("/ByteRange"))
{
QTC::TC("qpdf", "QPDFWriter no encryption sig contents");