diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/zencore/include/zencore/iobuffer.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/zencore/include/zencore/iobuffer.h b/src/zencore/include/zencore/iobuffer.h index 49f9f9e2c..2f248eb8b 100644 --- a/src/zencore/include/zencore/iobuffer.h +++ b/src/zencore/include/zencore/iobuffer.h @@ -414,8 +414,15 @@ public: /** Make sure buffer data is memory resident, but avoid memory mapping data from files */ ZENCORE_API static IoBuffer ReadFromFileMaybe(IoBuffer& InBuffer); - inline static IoBuffer MakeCloneFromMemory(const void* Ptr, size_t Sz) { return IoBuffer(IoBuffer::Clone, Ptr, Sz); } - inline static IoBuffer MakeCloneFromMemory(MemoryView Memory) { return IoBuffer(IoBuffer::Clone, Memory.GetData(), Memory.GetSize()); } + inline static IoBuffer MakeCloneFromMemory(const void* Ptr, size_t Sz) + { + if (Sz) + { + return IoBuffer(IoBuffer::Clone, Ptr, Sz); + } + return {}; + } + inline static IoBuffer MakeCloneFromMemory(MemoryView Memory) { return MakeCloneFromMemory(Memory.GetData(), Memory.GetSize()); } }; IoHash HashBuffer(IoBuffer& Buffer); |