On Mon, 17 Nov 2003, David wrote: > I've been exchanging email with a guy and have twice got the following > message half way through a sentence in his email: > > <snip> > ...... This way I know exactly where the > [Error: Formatting error: Non-hexadecimal character in QP encoding] > > after which pine doesn't display the rest of his email. > > I can read the rest of his email from mbox with less or vi. I can't find > any sign of a dodgey character. > > I've never seen this problem before... anyone got any suggestions? This > guy seems to be sending email from a web mailer thus: > > This SF. Net email is sponsored by: GoToMyPC > GoToMyPC is the fast, easy and secure way to access your computer from > any Web browser or wireless device. Click here to Try it Free! > https://www.gotomypc.com/tr/OSDN/AW/Q4_2003/t/g22lp?Target=mm/g22lp.tmpl
Hi David, [wonder how this rates for longest delay before initial reply] You've actually pasted the dodgy character here :-) I recently became similarly annoyed with this message and took a closer look. It arises from sourceforge adding taglines like the one you've pasted above without taking notice of the message encoding. If a message is encoded in quoted-printable, then 8-bit characters are encoded in a little hex string, prefixed by '=', meaning that '=' is also encoded. SF adds adverts that have non-encoded '='s, thus breaking it. sf.net has a master bug report here: https://sourceforge.net/tracker/index.php?func=detail&aid=652897&group_id=1&atid=200001 Anyway, I figured I'd reply since I couldn't find any decent references or fixes for this problem with a google search. There are two workarounds that I've got: 1) Turn on enable-full-header-and-text in the pine config. Then you can see the raw message when viewing with full headers (H key): [X] enable-full-header-cmd [X] enable-full-header-and-text I believe this feature was added in v4.50. 2) I wrote a procmail rule that fixes broken messages so that you get the actual message properly encoded. There may be strange bits where it flukes being valid (e.g. =12345 in a URL), but in sf.net cases, you're at least seeing the actual message properly encoded, as opposed to option (1): ------------- # fix broken quoted-printable # (particularly sf.net inserting a tagline advertisement with # unencoded ='s, which makes pine particularly unhappy) # =3D is the "=" encoding # Note that a correct encoding is an =HH (H = hexadecimal digit) # So a bad encoding is an = followed by zero characters (end of line) # or 1 character, or 2 chars where one isn't hex :0 fb * Content-Transfer-Encoding: quoted-printable | sed 's/=\([^0-9a-fA-F]\|.\([^0-9a-fA-F]\|$\)\|$\)/=3D\1/g' ------------- Hope that helps :-) Cheers, - Simon -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html