Mercurial > hg > orthanc
comparison OrthancFramework/Sources/MallocMemoryBuffer.cpp @ 4913:c1b19f95e166
fix signature of OrthancPluginReceivedInstanceCallback for ABI compatibility
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 22 Feb 2022 22:12:43 +0100 |
parents | 43e613a7756b |
children | 0ea402b4d901 |
comparison
equal
deleted
inserted
replaced
4912:45d6ce72a84e | 4913:c1b19f95e166 |
---|---|
55 } | 55 } |
56 } | 56 } |
57 | 57 |
58 | 58 |
59 void MallocMemoryBuffer::Assign(void* buffer, | 59 void MallocMemoryBuffer::Assign(void* buffer, |
60 size_t size, | 60 uint64_t size, |
61 FreeFunction freeFunction) | 61 FreeFunction freeFunction) |
62 { | 62 { |
63 Clear(); | 63 Clear(); |
64 | |
65 if (size != 0 && | |
66 buffer == NULL) | |
67 { | |
68 throw OrthancException(ErrorCode_NullPointer); | |
69 } | |
70 | |
71 if (static_cast<uint64_t>(static_cast<size_t>(size)) != size) | |
72 { | |
73 freeFunction(buffer); | |
74 throw OrthancException(ErrorCode_InternalError, "Buffer larger than 4GB, which is too large for Orthanc running in 32bits"); | |
75 } | |
64 | 76 |
65 buffer_ = buffer; | 77 buffer_ = buffer; |
66 size_ = size; | 78 size_ = size; |
67 free_ = freeFunction; | 79 free_ = freeFunction; |
68 | 80 |