X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fibex%2Fmail%2FIMAP.java;h=b4abb2477b183956c2dddf898e4cc8c0d484a2df;hb=52c154ee7bf49417e6a6b387ccc3fbab884229b8;hp=9588cb46c9d241c305f3104b15cca7def46136a6;hpb=94ad82f9461422b78e0dbe4db58f9a9efdf95064;p=org.ibex.mail.git diff --git a/src/org/ibex/mail/IMAP.java b/src/org/ibex/mail/IMAP.java index 9588cb4..b4abb24 100644 --- a/src/org/ibex/mail/IMAP.java +++ b/src/org/ibex/mail/IMAP.java @@ -254,8 +254,12 @@ public class IMAP { public void fetch(Query q, int spec, String[] headers, int start, int end, boolean uid) { for(Mailbox.Iterator it = selected().iterator(q); it.next(); ) { Message message = - ((spec & (BODYSTRUCTURE | ENVELOPE | INTERNALDATE | FIELDS | FIELDSNOT | RFC822 | - RFC822TEXT | RFC822SIZE | HEADERNOT | HEADER)) != 0) ? it.cur() : null; + ((spec & (BODYSTRUCTURE | RFC822 | RFC822TEXT | RFC822SIZE)) != 0) + ? it.cur() + : ((spec & (ENVELOPE | INTERNALDATE | FIELDS | FIELDSNOT | RFC822SIZE | HEADERNOT | HEADER)) != 0) + ? Message.newMessage(Fountain.Util.concat(it.head(), Fountain.Util.create("\r\n\r\n"))) + : null; + if (message != null) Log.warn("spec", spec); long size = message == null ? 0 : message.getLength(); client.fetch(it.imapNumber(), it.getFlags(), (int)size, message, it.uid()); it.setFlags(it.getFlags() & ~Mailbox.Flag.RECENT);