aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf
diff options
context:
space:
mode:
authorm-holger <m-holger@kubitscheck.org>2023-11-18 17:22:45 +0100
committerm-holger <m-holger@kubitscheck.org>2023-11-26 14:08:55 +0100
commit368666899fe24885fbe05ea03688fa985645ebd9 (patch)
treea717fe055a3bc386c8f1e07cfe552bb36788416a /libqpdf
parentddad5ad53ec8b9a0555beee84c92e1ec4cc1766f (diff)
downloadqpdf-368666899fe24885fbe05ea03688fa985645ebd9.tar.zst
Refactor InlineImageTracker::handleToken
Diffstat (limited to 'libqpdf')
-rw-r--r--libqpdf/QPDFPageObjectHelper.cc5
1 files changed, 1 insertions, 4 deletions
diff --git a/libqpdf/QPDFPageObjectHelper.cc b/libqpdf/QPDFPageObjectHelper.cc
index fd6e5215..54bb5cac 100644
--- a/libqpdf/QPDFPageObjectHelper.cc
+++ b/libqpdf/QPDFPageObjectHelper.cc
@@ -175,14 +175,11 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const& token)
size_t len = image_data.length();
if (len >= this->min_size) {
QTC::TC("qpdf", "QPDFPageObjectHelper externalize inline image");
- Pl_Buffer b("image_data");
- b.writeString(image_data);
- b.finish();
QPDFObjectHandle dict = convertIIDict(QPDFObjectHandle::parse(dict_str));
dict.replaceKey("/Length", QPDFObjectHandle::newInteger(QIntC::to_longlong(len)));
std::string name = resources.getUniqueResourceName("/IIm", this->min_suffix);
QPDFObjectHandle image =
- QPDFObjectHandle::newStream(this->qpdf, b.getBufferSharedPointer());
+ QPDFObjectHandle::newStream(this->qpdf, std::make_shared<Buffer>(std::move(image_data)));
image.replaceDict(dict);
resources.getKey("/XObject").replaceKey(name, image);
write(name);