From fb414a995576cd4dcdeb37ed74db01f168debe46 Mon Sep 17 00:00:00 2001 From: mguessan Date: Tue, 3 Feb 2009 16:18:29 +0000 Subject: [PATCH] Fail gracefully on multiple messages delete git-svn-id: http://svn.code.sf.net/p/davmail/code/trunk@318 3d1905a2-6b24-0410-a738-b14d5a86fcbd --- src/java/davmail/imap/ImapConnection.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/java/davmail/imap/ImapConnection.java b/src/java/davmail/imap/ImapConnection.java index 097646dd..68352cc7 100644 --- a/src/java/davmail/imap/ImapConnection.java +++ b/src/java/davmail/imap/ImapConnection.java @@ -349,14 +349,18 @@ public class ImapConnection extends AbstractConnection { } sendClient(commandId + " OK STORE completed"); } else if ("copy".equalsIgnoreCase(subcommand)) { - long uid = Long.parseLong(tokens.nextToken()); - ExchangeSession.Message message = messages.getByUid(uid); - String targetName = BASE64MailboxDecoder.decode(tokens.nextToken()); try { - session.copyMessage(message.messageUrl, targetName); - sendClient(commandId + " OK rename completed"); - } catch (HttpException e) { - sendClient(commandId + " NO " + e.getReason()); + long uid = Long.parseLong(tokens.nextToken()); + ExchangeSession.Message message = messages.getByUid(uid); + String targetName = BASE64MailboxDecoder.decode(tokens.nextToken()); + try { + session.copyMessage(message.messageUrl, targetName); + sendClient(commandId + " OK copy completed"); + } catch (HttpException e) { + sendClient(commandId + " NO " + e.getReason()); + } + } catch (NumberFormatException nfe) { + sendClient(commandId + " NO unable to copy multiple messages"); } } } else {