From a2540121fa4a92fc366d7bd19cf767841b5ef6fa Mon Sep 17 00:00:00 2001 From: Jesse Vincent Date: Tue, 15 Dec 2009 18:48:32 +0000 Subject: [PATCH] Bulletproofing against running IMAP Copy/Move commands with null messagelists. Fixes Issue 914 --- src/com/android/email/mail/store/ImapStore.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/com/android/email/mail/store/ImapStore.java b/src/com/android/email/mail/store/ImapStore.java index bce5f2563..cc92a27d0 100644 --- a/src/com/android/email/mail/store/ImapStore.java +++ b/src/com/android/email/mail/store/ImapStore.java @@ -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);