#include <stdlib.h>
#include <string.h>
+#include <assert.h>
#ifdef __cplusplus
extern "C" {
{
msgpack_sbuffer* sbuf = (msgpack_sbuffer*)data;
+ assert(buf || len == 0);
+ if(!buf) return 0;
+
if(sbuf->alloc - sbuf->size < len) {
void* tmp;
size_t nsize = (sbuf->alloc) ?
memcpy(sbuf->data + sbuf->size, buf, len);
sbuf->size += len;
+
return 0;
}