I've added some debugging (see below) and found this:
rfc2047_encode_adrlist: in:M? V?z Garc?a <[email protected]>
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