byte_size bytes of memory, and copies
byte_size bytes into it
NULL it returns
This replaces g_memdup(), which was prone to integer overflows when converting the argument from a #gsize to a #guint.
The memory to copy.
The argument can be
The data is owned by the caller of the function.
The number of bytes to copy.