1
0
mirror of https://github.com/moparisthebest/davmail synced 2025-02-28 09:21:49 -05:00

IMAP: fix 2973213, escape quotes in subject

git-svn-id: http://svn.code.sf.net/p/davmail/code/trunk@965 3d1905a2-6b24-0410-a738-b14d5a86fcbd
This commit is contained in:
mguessan 2010-03-22 10:17:50 +00:00
parent 2b758b1dc1
commit 5dc44ff9d8

View File

@ -679,7 +679,7 @@ public class ImapConnection extends AbstractConnection {
try {
MimeMessage mimeMessage = message.getMimeMessage();
// Fake envelope for date, subject, from, sender, reply-to, to, cc, bcc,in-reply-to, message-id
// Envelope for date, subject, from, sender, reply-to, to, cc, bcc,in-reply-to, message-id
appendEnvelopeHeader(buffer, mimeMessage.getHeader("Date"));
appendEnvelopeHeader(buffer, mimeMessage.getHeader("Subject"));
appendMailEnvelopeHeader(buffer, mimeMessage.getHeader("From", ","));
@ -701,9 +701,17 @@ public class ImapConnection extends AbstractConnection {
protected void appendEnvelopeHeader(StringBuilder buffer, String[] value) {
buffer.append(' ');
if (value != null && value.length > 0) {
buffer.append('"');
buffer.append(MimeUtility.unfold(value[0]));
buffer.append('"');
String unfoldedValue = MimeUtility.unfold(value[0]);
if (unfoldedValue.indexOf('"') >= 0) {
buffer.append('{');
buffer.append(unfoldedValue.length());
buffer.append("}\r\n");
buffer.append(unfoldedValue);
} else {
buffer.append('"');
buffer.append(unfoldedValue);
buffer.append('"');
}
} else {
buffer.append("NIL");
}