diff options
Diffstat (limited to 'src/libjin/fs/buffer.h')
-rw-r--r-- | src/libjin/fs/buffer.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/libjin/fs/buffer.h b/src/libjin/fs/buffer.h index dfdea21..7571c2d 100644 --- a/src/libjin/fs/buffer.h +++ b/src/libjin/fs/buffer.h @@ -16,16 +16,25 @@ namespace fs { } - inline ~Buffer() + inline Buffer(const Buffer& src) { - size = 0; - delete[] data; + delete data; + size = src.size; + data = new char[size]; + memcpy(data, src.data, size); } - inline Buffer(void* d, int size) + inline Buffer(void* d, int s) { data = new char(size); memcpy(data, d, size); + size = s; + } + + inline ~Buffer() + { + size = 0; + delete[] data; } public: |