Commit 8191d4cdad3e6bcc7caedf1a81c09ce1c602cde8
1 parent
fafd50bb
Refactor `QPDFEFStreamObjectHelper::newFromStream`: use `qpdf::String` and `qpdf…
…::types` helpers, simplify pipeline usage, and clean up includes.
Showing
1 changed file
with
9 additions
and
12 deletions
libqpdf/QPDFEFStreamObjectHelper.cc
| 1 | 1 | #include <qpdf/QPDFEFStreamObjectHelper.hh> |
| 2 | 2 | |
| 3 | -#include <qpdf/Pl_Count.hh> | |
| 4 | -#include <qpdf/Pl_Discard.hh> | |
| 3 | +#include <qpdf/Pipeline_private.hh> | |
| 5 | 4 | #include <qpdf/Pl_MD5.hh> |
| 6 | 5 | #include <qpdf/QIntC.hh> |
| 7 | 6 | #include <qpdf/QPDF.hh> |
| ... | ... | @@ -91,7 +90,7 @@ QPDFEFStreamObjectHelper::getChecksum() |
| 91 | 90 | QPDFEFStreamObjectHelper |
| 92 | 91 | QPDFEFStreamObjectHelper::createEFStream(QPDF& qpdf, std::shared_ptr<Buffer> data) |
| 93 | 92 | { |
| 94 | - return newFromStream(qpdf.newStream(data)); | |
| 93 | + return newFromStream(qpdf.newStream(std::move(data))); | |
| 95 | 94 | } |
| 96 | 95 | |
| 97 | 96 | QPDFEFStreamObjectHelper |
| ... | ... | @@ -104,7 +103,7 @@ QPDFEFStreamObjectHelper |
| 104 | 103 | QPDFEFStreamObjectHelper::createEFStream(QPDF& qpdf, std::function<void(Pipeline*)> provider) |
| 105 | 104 | { |
| 106 | 105 | auto stream = qpdf.newStream(); |
| 107 | - stream.replaceStreamData(provider, QPDFObjectHandle::newNull(), QPDFObjectHandle::newNull()); | |
| 106 | + stream.replaceStreamData(provider, {}, {}); | |
| 108 | 107 | return newFromStream(stream); |
| 109 | 108 | } |
| 110 | 109 | |
| ... | ... | @@ -125,7 +124,7 @@ QPDFEFStreamObjectHelper::setModDate(std::string const& date) |
| 125 | 124 | QPDFEFStreamObjectHelper& |
| 126 | 125 | QPDFEFStreamObjectHelper::setSubtype(std::string const& subtype) |
| 127 | 126 | { |
| 128 | - oh().getDict().replaceKey("/Subtype", QPDFObjectHandle::newName("/" + subtype)); | |
| 127 | + oh().getDict().replaceKey("/Subtype", Name("/" + subtype)); | |
| 129 | 128 | return *this; |
| 130 | 129 | } |
| 131 | 130 | |
| ... | ... | @@ -133,18 +132,16 @@ QPDFEFStreamObjectHelper |
| 133 | 132 | QPDFEFStreamObjectHelper::newFromStream(QPDFObjectHandle stream) |
| 134 | 133 | { |
| 135 | 134 | QPDFEFStreamObjectHelper result(stream); |
| 136 | - stream.getDict().replaceKey("/Type", QPDFObjectHandle::newName("/EmbeddedFile")); | |
| 137 | - Pl_Discard discard; | |
| 135 | + stream.getDict().replaceKey("/Type", Name("/EmbeddedFile")); | |
| 138 | 136 | // The PDF spec specifies use of MD5 here and notes that it is not to be used for security. MD5 |
| 139 | 137 | // is known to be insecure. |
| 140 | - Pl_MD5 md5("EF md5", &discard); | |
| 141 | - Pl_Count count("EF size", &md5); | |
| 138 | + Pl_MD5 md5("EF md5"); | |
| 139 | + pl::Count count(0, &md5); | |
| 142 | 140 | if (!stream.pipeStreamData(&count, nullptr, 0, qpdf_dl_all)) { |
| 143 | 141 | stream.warn("unable to get stream data for new embedded file stream"); |
| 144 | 142 | } else { |
| 145 | - result.setParam("/Size", QPDFObjectHandle::newInteger(count.getCount())); | |
| 146 | - result.setParam( | |
| 147 | - "/CheckSum", QPDFObjectHandle::newString(QUtil::hex_decode(md5.getHexDigest()))); | |
| 143 | + result.setParam("/Size", Integer(count.getCount())); | |
| 144 | + result.setParam("/CheckSum", String(QUtil::hex_decode(md5.getHexDigest()))); | |
| 148 | 145 | } |
| 149 | 146 | return result; |
| 150 | 147 | } | ... | ... |