summaryrefslogtreecommitdiff
path: root/program/lib
diff options
context:
space:
mode:
Diffstat (limited to 'program/lib')
-rw-r--r--program/lib/imap.inc29
1 files changed, 18 insertions, 11 deletions
diff --git a/program/lib/imap.inc b/program/lib/imap.inc
index e97f81844..8ea4fbd12 100644
--- a/program/lib/imap.inc
+++ b/program/lib/imap.inc
@@ -1907,7 +1907,9 @@ function iil_C_ModFlag(&$conn, $mailbox, $messages, $flag, $mod) {
if (iil_C_Select($conn, $mailbox)) {
$c = 0;
- fputs($fp, "flg STORE $messages " . $mod . "FLAGS (" . $flag . ")\r\n");
+ $_line = "flg STORE $messages " . $mod . "FLAGS (" . $flag . ")\r\n";
+ trigger_error($_line, E_USER_WARNING);
+ fputs($fp, $_line);
do {
$line=chop(iil_ReadLine($fp, 100));
if ($line[0] == '*') {
@@ -2046,16 +2048,21 @@ function iil_C_Search(&$conn, $folder, $criteria) {
}
function iil_C_Move(&$conn, $messages, $from, $to) {
- $fp = $conn->fp;
-
- if (!$from || !$to) {
- return -1;
- }
-
- $r = iil_C_Copy($conn, $messages, $from,$to);
- if ($r==0) {
- return iil_C_Delete($conn, $from, $messages);
- }
+ global $CONFIG;
+
+ $fp = $conn->fp;
+
+ if (!$from || !$to) {
+ return -1;
+ }
+ $r = iil_C_Copy($conn, $messages, $from,$to);
+ if ($r==0) {
+ return iil_C_Delete($conn, $from, $messages);
+ }
+ // Copy failed
+ if (isset($CONFIG['delete_always']) && $CONFIG['delete_always'] === true) {
+ return iil_C_Delete($conn, $from, $messages);
+ }
return $r;
}