diff options
Diffstat (limited to 'libqpdf')
-rw-r--r-- | libqpdf/Pl_Buffer.cc | 8 | ||||
-rw-r--r-- | libqpdf/QPDFWriter.cc | 6 |
2 files changed, 13 insertions, 1 deletions
diff --git a/libqpdf/Pl_Buffer.cc b/libqpdf/Pl_Buffer.cc index 73db555a..3a41c579 100644 --- a/libqpdf/Pl_Buffer.cc +++ b/libqpdf/Pl_Buffer.cc @@ -79,10 +79,16 @@ Pl_Buffer::getBuffer() unsigned char* p = b->getBuffer(); memcpy(p, this->m->data->getBuffer(), this->m->total_size); } - this->m = new Members(); + this->m = PointerHolder<Members>(new Members()); return b; } +PointerHolder<Buffer> +Pl_Buffer::getBufferSharedPointer() +{ + return PointerHolder<Buffer>(getBuffer()); +} + void Pl_Buffer::getMallocBuffer(unsigned char **buf, size_t* len) { diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc index 5f7b39a5..7cde1426 100644 --- a/libqpdf/QPDFWriter.cc +++ b/libqpdf/QPDFWriter.cc @@ -157,6 +157,12 @@ QPDFWriter::getBuffer() return result; } +PointerHolder<Buffer> +QPDFWriter::getBufferSharedPointer() +{ + return PointerHolder<Buffer>(getBuffer()); +} + void QPDFWriter::setOutputPipeline(Pipeline* p) { |