From e2e8b92b9ff6573d695d6cfcd9c295337d2399b0 Mon Sep 17 00:00:00 2001 From: stekkel Date: Mon, 10 Nov 2003 17:46:37 +0000 Subject: [PATCH] * first unsubscribe before we delete * fail silently on unsubscribe git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@6135 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- functions/imap_mailbox.php | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/functions/imap_mailbox.php b/functions/imap_mailbox.php index 191c6b94..d256c549 100755 --- a/functions/imap_mailbox.php +++ b/functions/imap_mailbox.php @@ -328,7 +328,7 @@ function sqimap_subscribe ($imap_stream, $mailbox) { function sqimap_unsubscribe ($imap_stream, $mailbox) { $read_ary = sqimap_run_command($imap_stream, 'UNSUBSCRIBE ' . sqimap_encode_mailbox_name($mailbox), - true, $response, $message); + false, $response, $message); } /** @@ -336,12 +336,17 @@ function sqimap_unsubscribe ($imap_stream, $mailbox) { */ function sqimap_mailbox_delete ($imap_stream, $mailbox) { global $data_dir, $username; + sqimap_unsubscribe ($imap_stream, $mailbox); $read_ary = sqimap_run_command($imap_stream, 'DELETE ' . sqimap_encode_mailbox_name($mailbox), true, $response, $message); - sqimap_unsubscribe ($imap_stream, $mailbox); - do_hook_function('rename_or_delete_folder', $args = array($mailbox, 'delete', '')); - removePref($data_dir, $username, "thread_$mailbox"); + if ($response !== 'OK') { + // subscribe again + sqimap_subscribe ($imap_stream, $mailbox); + } else { + do_hook_function('rename_or_delete_folder', $args = array($mailbox, 'delete', '')); + removePref($data_dir, $username, "thread_$mailbox"); + } } /** -- 2.25.1