From: stekkel Date: Mon, 19 Aug 2002 07:39:09 +0000 (+0000) Subject: fix for bug #596781 X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=commitdiff_plain;h=b44ee3f0f2ffca2217c29803f3c411e562ad937a fix for bug #596781 git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@3352 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- diff --git a/functions/tree.php b/functions/tree.php index 12c46b14..2a0b9bbd 100644 --- a/functions/tree.php +++ b/functions/tree.php @@ -69,27 +69,26 @@ function walkTreeInPreOrderEmptyTrash($index, $imap_stream, $tree) { if ($tree[$index]['value'] != $trash_folder) { sqimap_mailbox_delete($imap_stream, $tree[$index]['value']); } else { - $numMessages = sqimap_get_num_messages($imap_stream, $trash_folder); - if ($numMessages > 0) { - sqimap_mailbox_select($imap_stream, $trash_folder); - sqimap_messages_flag ($imap_stream, 1, $numMessages, 'Deleted', true); - sqimap_mailbox_expunge($imap_stream, $trash_folder, true); + $mbx_response = sqimap_mailbox_select($imap_stream, $trash_folder); + if ($mbx_response['EXISTS'] > 0) { + sqimap_messages_flag ($imap_stream, 1, '*', 'Deleted', true); + sqimap_mailbox_expunge($imap_stream, $trash_folder, true); } } } else { if ($tree[$index]['value'] != $trash_folder) { sqimap_mailbox_delete($imap_stream, $tree[$index]['value']); } else { - $numMessages = sqimap_get_num_messages($imap_stream, $trash_folder); - if ($numMessages > 0) { - sqimap_mailbox_select($imap_stream, $trash_folder); - sqimap_messages_flag ($imap_stream, 1, $numMessages, 'Deleted', true); - sqimap_mailbox_expunge($imap_stream, $trash_folder, true); + $mbx_response = sqimap_mailbox_select($imap_stream, $trash_folder); + if ($mbx_response['EXISTS'] > 0) { + sqimap_messages_flag ($imap_stream, 1, '*', 'Deleted', true); + sqimap_mailbox_expunge($imap_stream, $trash_folder, true); } } } } + function walkTreeInPreOrderDeleteFolders($index, $imap_stream, $tree) { if ($tree[$index]['doIHaveChildren']) { for ($j = 0; $j < count($tree[$index]['subNodes']); $j++) { @@ -109,21 +108,18 @@ function walkTreeInPostOrderCreatingFoldersUnderTrash($index, $imap_stream, $tre if ($tree[$index]['doIHaveChildren']) { sqimap_mailbox_create($imap_stream, $trash_folder . $delimiter . $subFolderName, ""); - sqimap_mailbox_select($imap_stream, $tree[$index]['value']); - - $messageCount = sqimap_get_num_messages($imap_stream, $tree[$index]['value']); + $mbx_response = sqimap_mailbox_select($imap_stream, $tree[$index]['value']); + $messageCount = $mbx_response['EXISTS']; if ($messageCount > 0) - sqimap_messages_copy($imap_stream, 1, $messageCount, $trash_folder . $delimiter . $subFolderName); - + sqimap_messages_copy($imap_stream, 1, '*', $trash_folder . $delimiter . $subFolderName); for ($j = 0;$j < count($tree[$index]['subNodes']); $j++) walkTreeInPostOrderCreatingFoldersUnderTrash($tree[$index]['subNodes'][$j], $imap_stream, $tree, $topFolderName); } else { sqimap_mailbox_create($imap_stream, $trash_folder . $delimiter . $subFolderName, ''); - sqimap_mailbox_select($imap_stream, $tree[$index]['value']); - - $messageCount = sqimap_get_num_messages($imap_stream, $tree[$index]['value']); + $mbx_response = sqimap_mailbox_select($imap_stream, $tree[$index]['value']); + $messageCount = $mbx_response['EXISTS']; if ($messageCount > 0) - sqimap_messages_copy($imap_stream, 1, $messageCount, $trash_folder . $delimiter . $subFolderName); + sqimap_messages_copy($imap_stream, 1, '*', $trash_folder . $delimiter . $subFolderName); } }