failed asprintf should return ENOMEM; remove a bunch of multiple-returns