diff options
author | Jay Berkenbilt <ejb@ql.org> | 2010-08-03 00:17:01 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2010-08-03 00:17:01 +0200 |
commit | 9a06fc541ce00361f12f6231b2f7556615cbccb7 (patch) | |
tree | 858037640e94c3081e829e21c980b556de744ea5 /libqpdf/QPDF_Stream.cc | |
parent | ab5a01c64ec3c8cb4f13b6846ca4ecdc7b888e14 (diff) | |
download | qpdf-9a06fc541ce00361f12f6231b2f7556615cbccb7.tar.zst |
ready to implement replacement stream data
git-svn-id: svn+q:///qpdf/trunk@987 71b93d88-0707-0410-a8cf-f5a4172ac649
Diffstat (limited to 'libqpdf/QPDF_Stream.cc')
-rw-r--r-- | libqpdf/QPDF_Stream.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/libqpdf/QPDF_Stream.cc b/libqpdf/QPDF_Stream.cc index d0dd2e5f..500dfb10 100644 --- a/libqpdf/QPDF_Stream.cc +++ b/libqpdf/QPDF_Stream.cc @@ -319,9 +319,30 @@ QPDF_Stream::pipeStreamData(Pipeline* pipeline, bool filter, } } + // XXX handle stream_data and stream_data_handler QPDF::Pipe::pipeStreamData(this->qpdf, this->objid, this->generation, this->offset, this->length, this->stream_dict, pipeline); return filter; } + +void +QPDF_Stream::replaceStreamData(PointerHolder<Buffer> data, + QPDFObjectHandle filter, + QPDFObjectHandle decode_parms) +{ + this->stream_data = data; + this->stream_dict.replaceOrRemoveKey("/Filter", filter); + this->stream_dict.replaceOrRemoveKey("/DecodeParms", decode_parms); + this->stream_dict.replaceKey("/Length", + QPDFObjectHandle::newInteger( + data.getPointer()->getSize())); +} + +void +QPDF_Stream::replaceStreamData( + PointerHolder<QPDFObjectHandle::StreamDataHandler> dh) +{ + this->stream_data_handler = dh; +} |