You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2011/04/08 13:39:44 UTC

svn commit: r1090211 - /james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java

Author: norman
Date: Fri Apr  8 11:39:43 2011
New Revision: 1090211

URL: http://svn.apache.org/viewvc?rev=1090211&view=rev
Log:
Make sure the correct message index is returned when send expunge responses. See IMAP-267

Modified:
    james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java

Modified: james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java?rev=1090211&r1=1090210&r2=1090211&view=diff
==============================================================================
--- james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java (original)
+++ james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java Fri Apr  8 11:39:43 2011
@@ -148,15 +148,14 @@ abstract public class AbstractMailboxPro
         final Collection<Long> expungedUids = selected.expungedUids();
         for (final Long uid: expungedUids) {
             final long uidValue = uid.longValue();
-            final int msn = selected.msn(uidValue);
+            
+            // we need to remove the message in the loop to the sequence numbers are updated correctly
+            // See 7.4.1.  EXPUNGE Response
+            final int msn = selected.remove(uidValue);
             // TODO: use factory
             ExpungeResponse response = new ExpungeResponse(msn);
             responder.respond(response);
         }
-        for (final Long uid: expungedUids) {
-            final long uidValue = uid.longValue();
-            selected.remove(uidValue);
-        }
     }
 
     private void addFlagsResponses(final ImapSession session, final SelectedMailbox selected, 



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org