`extract_encoded_text` doesn't change the value at `user` when it fails, so this is relying on the caller to have NULL'd the subject field properly before trying to decode. I think that's fine in this case, but it might be worth setting it explicitly here.