Critique of realloc() wrapper
Standard naming convention in C is usually lower_case_with_underscore.
You should be using void * rather than char *
I would consider making the return value deterministic when the new size is 0 by always returning NULL rather than the implementation defined behaviour (which could technically be a pointer which is not NULL but still not allowed to be dereferenced). free guarantees by spec that free(NULL) is legal.