Add malloc OOM check