about summary refs log tree commit diff
path: root/src/engine/external/libwebsockets/alloc.c
diff options
context:
space:
mode:
authoreeeee <eeeee@qwe123.info>2015-02-07 14:15:19 -0800
committerdef <dennis@felsin9.de>2015-04-19 16:05:13 +0200
commit424ce4987ced7deda3e355b7b6373680bf506646 (patch)
tree239537b1938ac18c6542a05088bc26c6a2860408 /src/engine/external/libwebsockets/alloc.c
parent9bbe115c522835c34c29196f2595c29c6bf00701 (diff)
downloadzcatch-424ce4987ced7deda3e355b7b6373680bf506646.tar.gz
zcatch-424ce4987ced7deda3e355b7b6373680bf506646.zip
added libwebsockets source code
Diffstat (limited to 'src/engine/external/libwebsockets/alloc.c')
-rw-r--r--src/engine/external/libwebsockets/alloc.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/engine/external/libwebsockets/alloc.c b/src/engine/external/libwebsockets/alloc.c
new file mode 100644
index 00000000..3bc5260e
--- /dev/null
+++ b/src/engine/external/libwebsockets/alloc.c
@@ -0,0 +1,30 @@
+#include "private-libwebsockets.h"
+
+static void *_realloc(void *ptr, size_t size)
+{
+	if (size)
+		return realloc(ptr, size);
+	else if (ptr)
+		free(ptr);
+	return NULL;
+}
+
+void *(*_lws_realloc)(void *ptr, size_t size) = _realloc;
+
+void *lws_realloc(void *ptr, size_t size)
+{
+	return _lws_realloc(ptr, size);
+}
+
+void *lws_zalloc(size_t size)
+{
+	void *ptr = _lws_realloc(NULL, size);
+	if (ptr)
+		memset(ptr, 0, size);
+	return ptr;
+}
+
+void lws_set_allocator(void *(*cb)(void *ptr, size_t size))
+{
+	_lws_realloc = cb;
+}