The relay variable is always allocated, but might not be freed before we return from this function. See: Coverity CID 1437431
8550016