diff options
| author | Dan Engelbrecht <[email protected]> | 2023-12-14 04:16:25 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-12-14 10:16:25 +0100 |
| commit | 4d96ef4d9d2c35243a25d90949d43d0997e3bb44 (patch) | |
| tree | 5f398e0027886aed3d12b625b89014ef83fb8abd /src/zencore/include | |
| parent | 0.2.37-pre1 (diff) | |
| download | zen-4d96ef4d9d2c35243a25d90949d43d0997e3bb44.tar.xz zen-4d96ef4d9d2c35243a25d90949d43d0997e3bb44.zip | |
Make sure IoBuffer is a valid null-buffer after move operation (#610)
Diffstat (limited to 'src/zencore/include')
| -rw-r--r-- | src/zencore/include/zencore/iobuffer.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/zencore/include/zencore/iobuffer.h b/src/zencore/include/zencore/iobuffer.h index d891ed55b..b9e503354 100644 --- a/src/zencore/include/zencore/iobuffer.h +++ b/src/zencore/include/zencore/iobuffer.h @@ -337,11 +337,20 @@ public: BorrowedFile }; - inline IoBuffer() = default; - inline IoBuffer(IoBuffer&& Rhs) noexcept = default; - inline IoBuffer(const IoBuffer& Rhs) = default; + inline IoBuffer() = default; + inline IoBuffer(IoBuffer&& Rhs) noexcept + { + m_Core.Swap(Rhs.m_Core); + Rhs.m_Core = NullBufferCore; + } + inline IoBuffer(const IoBuffer& Rhs) = default; inline IoBuffer& operator=(const IoBuffer& Rhs) = default; - inline IoBuffer& operator=(IoBuffer&& Rhs) noexcept = default; + inline IoBuffer& operator =(IoBuffer&& Rhs) noexcept + { + m_Core.Swap(Rhs.m_Core); + Rhs.m_Core = NullBufferCore; + return *this; + } /** Create an uninitialized buffer of the given size */ |