I've added some debugging (see below) and found this: rfc2047_encode_adrlist: in:M? V?z Garc?a <r...@esmtp.org> rfc2047_encode_adrlist: out:=?iso-8859-1?B?TaogVuF6IEdhcmPtYSA8ckBlc210cC5vcmc+?= (I set charset=iso-8859-1 for my tests)
So it's encoding the entire address, not just the display name. I guess some parsing is needed to avoid that (or something like "only encode the shortest but required part"?) #ifdef EXACT_ADDRESS if (ptr->val) { dprint (2, (debugfile, "%s: in:%s\n", __FUNCTION__, ptr->val)); _rfc2047_encode_string (&ptr->val, 1, col); dprint (2, (debugfile, "%s: out:%s\n", __FUNCTION__, ptr->val)); } #endif