any malloc can fail