+2011-01-03 [colin] 3.7.8cvs25
+
+ * src/unmime.c
+ Fix bug #2299, "Incorrect handling of quoted printable coma
+ in headers". As this is really painful to fix by switching
+ the whole stuff to a list of headers tokens, we workaround
+ the problem by adding quotes around the encoded-word (making
+ it a quoted-string which continuity is already handled).
+
2011-01-03 [colin] 3.7.8cvs24
* src/procheader.c
( cvs diff -u -r 1.50.2.60 -r 1.50.2.61 src/compose.h; ) > 3.7.8cvs22.patchset
( cvs diff -u -r 1.382.2.564 -r 1.382.2.565 src/compose.c; ) > 3.7.8cvs23.patchset
( cvs diff -u -r 1.47.2.51 -r 1.47.2.52 src/procheader.c; ) > 3.7.8cvs24.patchset
+( cvs diff -u -r 1.8.2.14 -r 1.8.2.15 src/unmime.c; ) > 3.7.8cvs25.patchset
continue;
}
+ /* An encoded word MUST not appear within a quoted string,
+ * so quoting that word after decoding should be safe.
+ * We check there are no quotes just to be sure. If there
+ * are, well, the comma won't pose a problem, probably.
+ */
+ if (strchr(decoded_text, ',') && !strchr(decoded_text, '"')) {
+ gchar *tmp = g_strdup_printf("\"%s\"", decoded_text);
+ g_free(decoded_text);
+ decoded_text = tmp;
+ }
+
/* convert to UTF-8 */
conv_str = conv_codeset_strdup(decoded_text, charset, NULL);
if (!conv_str || !g_utf8_validate(conv_str, -1, NULL)) {