From 40c45e9de99186eda203a925c09424a3a8ec103c Mon Sep 17 00:00:00 2001 From: alecpl Date: Wed, 7 Dec 2011 08:44:48 +0000 Subject: - Fixed issues with big memory allocation of IMAP results, improved a lot of rcube_imap class --- program/steps/mail/sendmail.inc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'program/steps/mail/sendmail.inc') diff --git a/program/steps/mail/sendmail.inc b/program/steps/mail/sendmail.inc index 64deb73d8..0da1ee342 100644 --- a/program/steps/mail/sendmail.inc +++ b/program/steps/mail/sendmail.inc @@ -701,11 +701,11 @@ if ($store_target) { if ($olddraftmessageid) { // delete previous saved draft // @TODO: use message UID (remember to check UIDVALIDITY) to skip this SEARCH - $a_deleteid = $IMAP->search_once($CONFIG['drafts_mbox'], - 'HEADER Message-ID '.$olddraftmessageid, true); + $delete_idx = $IMAP->search_once($CONFIG['drafts_mbox'], + 'HEADER Message-ID '.$olddraftmessageid); - if (!empty($a_deleteid)) { - $deleted = $IMAP->delete_message($a_deleteid, $CONFIG['drafts_mbox']); + if ($del_uid = $delete_idx->getElement('FIRST')) { + $deleted = $IMAP->delete_message($del_uid, $CONFIG['drafts_mbox']); // raise error if deletion of old draft failed if (!$deleted) @@ -726,8 +726,8 @@ if ($savedraft) { // remember new draft-uid ($saved could be an UID or TRUE here) if (is_bool($saved)) { - $draftuids = $IMAP->search_once($CONFIG['drafts_mbox'], 'HEADER Message-ID '.$msgid, true); - $saved = $draftuids[0]; + $draft_idx = $IMAP->search_once($CONFIG['drafts_mbox'], 'HEADER Message-ID '.$msgid); + $saved = $draft_idx->getElement('FIRST'); } $COMPOSE['param']['draft_uid'] = $saved; -- cgit v1.2.3