summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJay Berkenbilt <jberkenbilt@users.noreply.github.com>2023-06-17 20:04:06 +0200
committerGitHub <noreply@github.com>2023-06-17 20:04:06 +0200
commit328a2d083eaa1a71bd47d22df0321cc8a302c511 (patch)
treee195044da4cae04febced1528f4f30e64e54343d /include
parent463953bc96ead56227ef3dbf62639eb7e3545ab4 (diff)
parent0f2ef5e85bce0d64683e8071151711f21fa3e052 (diff)
downloadqpdf-328a2d083eaa1a71bd47d22df0321cc8a302c511.tar.zst
Merge pull request #983 from m-holger/buffer
Add new Buffer method copy and deprecate copy constructor / assignment operator
Diffstat (limited to 'include')
-rw-r--r--include/qpdf/Buffer.hh16
1 files changed, 12 insertions, 4 deletions
diff --git a/include/qpdf/Buffer.hh b/include/qpdf/Buffer.hh
index 719a6bd5..c0669c6c 100644
--- a/include/qpdf/Buffer.hh
+++ b/include/qpdf/Buffer.hh
@@ -41,10 +41,10 @@ class Buffer
QPDF_DLL
Buffer(unsigned char* buf, size_t size);
- QPDF_DLL
- Buffer(Buffer const&);
- QPDF_DLL
- Buffer& operator=(Buffer const&);
+ [[deprecated("Move Buffer or use Buffer::copy instead")]] QPDF_DLL Buffer(Buffer const&);
+ [[deprecated("Move Buffer or use Buffer::copy instead")]] QPDF_DLL Buffer&
+ operator=(Buffer const&);
+
QPDF_DLL
Buffer(Buffer&&) noexcept;
QPDF_DLL
@@ -56,6 +56,14 @@ class Buffer
QPDF_DLL
unsigned char* getBuffer();
+ // Create a new copy of the Buffer. The new Buffer owns an independent copy of the data.
+ QPDF_DLL
+ Buffer copy() const;
+
+ // Only used during CI testing.
+ // ABI: remove when removing copy constructor / assignment operator
+ static void setTestMode() noexcept;
+
private:
class Members
{