From 64dc32ee5d45c27c561064274561e2a0d667c00f Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Tue, 20 Oct 2009 13:15:33 -0600 Subject: [PATCH] Better IMAP error handling when viewing preview --- imp/ajax.php | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/imp/ajax.php b/imp/ajax.php index 8a543ba32..1b26a768f 100644 --- a/imp/ajax.php +++ b/imp/ajax.php @@ -542,13 +542,21 @@ case 'ShowPreview': /* We know we are going to be exclusively dealing with this mailbox, so * select it on the IMAP server (saves some STATUS calls). Open R/W to * clear the RECENT flag. */ - $imp_imap->ob()->openMailbox($ptr['key'], Horde_Imap_Client::OPEN_READWRITE); - - $show_msg = new IMP_Views_ShowMessage(); - $result = (object)$show_msg->showMessage($args); - if (isset($result->error)) { - $check_uidvalidity = true; + try { + $imp_imap->ob()->openMailbox($ptr['key'], Horde_Imap_Client::OPEN_READWRITE); + $show_msg = new IMP_Views_ShowMessage(); + $result = (object)$show_msg->showMessage($args); + if (isset($result->error)) { + $check_uidvalidity = true; + } + } catch (Horde_Imap_Client_Exception $e) { + $result = new stdClass; + $result->error = $e->getMessage(); + $result->errortype = 'horde.error'; + $result->index = $args['index']; + $result->mailbox = $args['mailbox']; } + break; case 'Html2Text': -- 2.11.0