Bulletproofing against running IMAP Copy/Move commands with null messagelists. Fixes Issue 914

This commit is contained in:
Jesse Vincent 2009-12-15 18:48:32 +00:00
parent 71ea9f3795
commit a2540121fa
1 changed files with 9 additions and 0 deletions

View File

@ -698,6 +698,10 @@ public class ImapStore extends Store
{
throw new MessagingException("ImapFolder.copyMessages passed non-ImapFolder");
}
if (messages.length == 0)
return;
ImapFolder iFolder = (ImapFolder)folder;
checkOpen();
String[] uids = new String[messages.length];
@ -720,12 +724,17 @@ public class ImapStore extends Store
@Override
public void moveMessages(Message[] messages, Folder folder) throws MessagingException
{
if (messages.length == 0)
return;
copyMessages(messages, folder);
setFlags(messages, new Flag[] { Flag.DELETED }, true);
}
public void delete(Message[] messages, String trashFolderName) throws MessagingException
{
if (messages.length == 0)
return;
if (getName().equals(trashFolderName))
{
setFlags(messages, new Flag[] { Flag.DELETED }, true);