Author: norman
Date: Mon Mar 29 06:52:44 2010
New Revision: 928612

URL: http://svn.apache.org/viewvc?rev=928612&view=rev
Log:
Fix stat command, which was failing on empty inbox. This effected thunderbird 
sometimes.. (Thx Eric for the pointer)

Modified:
    
james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/StatCmdHandler.java

Modified: 
james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/StatCmdHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/StatCmdHandler.java?rev=928612&r1=928611&r2=928612&view=diff
==============================================================================
--- 
james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/StatCmdHandler.java
 (original)
+++ 
james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/StatCmdHandler.java
 Mon Mar 29 06:52:44 2010
@@ -58,19 +58,21 @@ public class StatCmdHandler implements C
             try {
                List<Long> uidList = (List<Long>) 
session.getState().get(POP3Session.UID_LIST);
                 List<Long> deletedUidList = (List<Long>) 
session.getState().get(POP3Session.DELETED_UID_LIST);
-
-                MailboxSession mailboxSession = (MailboxSession) 
session.getState().get(POP3Session.MAILBOX_SESSION);
-               Iterator<MessageResult> results =  
session.getUserMailbox().getMessages(MessageRange.range(uidList.get(0), 
uidList.get(uidList.size() -1)), new FetchGroupImpl(FetchGroup.MINIMAL), 
mailboxSession);
-
                 long size = 0;
                 int count = 0;
-               List<MessageResult> validResults = new 
ArrayList<MessageResult>();
-                while (results.hasNext()) {
-                       MessageResult result = results.next();
-                    if (deletedUidList.contains(result.getUid()) == false) {
-                        size += result.getSize();
-                        count++;
-                        validResults.add(result);
+                if (uidList.isEmpty() == false) {
+                    MailboxSession mailboxSession = (MailboxSession) 
session.getState().get(POP3Session.MAILBOX_SESSION);
+                    Iterator<MessageResult> results =  
session.getUserMailbox().getMessages(MessageRange.range(uidList.get(0), 
uidList.get(uidList.size() -1)), new FetchGroupImpl(FetchGroup.MINIMAL), 
mailboxSession);
+
+
+                    List<MessageResult> validResults = new 
ArrayList<MessageResult>();
+                    while (results.hasNext()) {
+                        MessageResult result = results.next();
+                        if (deletedUidList.contains(result.getUid()) == false) 
{
+                            size += result.getSize();
+                            count++;
+                            validResults.add(result);
+                        }
                     }
                 }
                 StringBuilder responseBuffer =



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

Reply via email to