
#include <stdlib.h>
#include <string.h>

void *realloc(void *ptr, size_t size)
{
	void *newptr = NULL;

	if (size > 0) {
		newptr = malloc(size);
		if (newptr && ptr) {
			memcpy(newptr, ptr, size);
			free(ptr);
		}
	}
	else
		free(ptr);
	return newptr;
}
