Commit 7eb903d9aa797a207f5b1b115dce2296d348000b
1 parent
efbb2167
Use functional replaceStreamData
Showing
1 changed file
with
1 additions
and
23 deletions
libqpdf/QPDFEFStreamObjectHelper.cc
| @@ -113,34 +113,12 @@ QPDFEFStreamObjectHelper::createEFStream( | @@ -113,34 +113,12 @@ QPDFEFStreamObjectHelper::createEFStream( | ||
| 113 | return newFromStream(QPDFObjectHandle::newStream(&qpdf, data)); | 113 | return newFromStream(QPDFObjectHandle::newStream(&qpdf, data)); |
| 114 | } | 114 | } |
| 115 | 115 | ||
| 116 | -namespace QEF | ||
| 117 | -{ | ||
| 118 | - class Provider: public QPDFObjectHandle::StreamDataProvider | ||
| 119 | - { | ||
| 120 | - public: | ||
| 121 | - Provider(std::function<void(Pipeline*)> provider) : | ||
| 122 | - StreamDataProvider(false), | ||
| 123 | - provider(provider) | ||
| 124 | - { | ||
| 125 | - } | ||
| 126 | - virtual ~Provider() = default; | ||
| 127 | - virtual void provideStreamData(int objid, int generation, | ||
| 128 | - Pipeline* pipeline) override | ||
| 129 | - { | ||
| 130 | - this->provider(pipeline); | ||
| 131 | - } | ||
| 132 | - | ||
| 133 | - private: | ||
| 134 | - std::function<void(Pipeline*)> provider; | ||
| 135 | - }; | ||
| 136 | -}; | ||
| 137 | - | ||
| 138 | QPDFEFStreamObjectHelper | 116 | QPDFEFStreamObjectHelper |
| 139 | QPDFEFStreamObjectHelper::createEFStream( | 117 | QPDFEFStreamObjectHelper::createEFStream( |
| 140 | QPDF& qpdf, std::function<void(Pipeline*)> provider) | 118 | QPDF& qpdf, std::function<void(Pipeline*)> provider) |
| 141 | { | 119 | { |
| 142 | auto stream = QPDFObjectHandle::newStream(&qpdf); | 120 | auto stream = QPDFObjectHandle::newStream(&qpdf); |
| 143 | - stream.replaceStreamData(new QEF::Provider(provider), | 121 | + stream.replaceStreamData(provider, |
| 144 | QPDFObjectHandle::newNull(), | 122 | QPDFObjectHandle::newNull(), |
| 145 | QPDFObjectHandle::newNull()); | 123 | QPDFObjectHandle::newNull()); |
| 146 | return newFromStream(stream); | 124 | return newFromStream(stream); |