diff options
Diffstat (limited to 'cpp/src/msgpack/unpack.hpp')
| -rw-r--r-- | cpp/src/msgpack/unpack.hpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/cpp/src/msgpack/unpack.hpp b/cpp/src/msgpack/unpack.hpp index 56ce0f6..7b45017 100644 --- a/cpp/src/msgpack/unpack.hpp +++ b/cpp/src/msgpack/unpack.hpp @@ -24,8 +24,9 @@ #include <memory> #include <stdexcept> +// backward compatibility #ifndef MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE -#define MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE (32*1024) +#define MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE MSGPACK_UNPACKER_INIT_BUFFER_SIZE #endif namespace msgpack { @@ -64,12 +65,12 @@ private: class unpacker : public msgpack_unpacker { public: - unpacker(size_t init_buffer_size = MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE); + unpacker(size_t init_buffer_size = MSGPACK_UNPACKER_INIT_BUFFER_SIZE); ~unpacker(); public: /*! 1. reserve buffer. at least `size' bytes of capacity will be ready */ - void reserve_buffer(size_t size); + void reserve_buffer(size_t size = MSGPACK_UNPACKER_RESERVE_SIZE); /*! 2. read data to the buffer() up to buffer_capacity() bytes */ char* buffer(); @@ -160,7 +161,7 @@ private: }; -static bool unpack(unpacked* result, +static void unpack(unpacked* result, const char* data, size_t len, size_t* offset = NULL); @@ -312,7 +313,7 @@ inline void unpacker::remove_nonparsed_buffer() } -inline bool unpack(unpacked* result, +inline void unpack(unpacked* result, const char* data, size_t len, size_t* offset) { msgpack::object obj; @@ -326,12 +327,12 @@ inline bool unpack(unpacked* result, case UNPACK_SUCCESS: result->get() = obj; result->zone() = z; - return false; + return; case UNPACK_EXTRA_BYTES: result->get() = obj; result->zone() = z; - return true; + return; case UNPACK_CONTINUE: throw unpack_error("insufficient bytes"); |
