Explorar o código

fix for expunge with UID in the sid

stekkel %!s(int64=23) %!d(string=hai) anos
pai
achega
6855005803
Modificáronse 1 ficheiros con 7 adicións e 4 borrados
  1. 7 4
      functions/imap_mailbox.php

+ 7 - 4
functions/imap_mailbox.php

@@ -149,17 +149,20 @@ function isSpecialMailbox( $box ) {
 /* Expunges a mailbox */
 function sqimap_mailbox_expunge ($imap_stream, $mailbox, $handle_errors = true, $id='') {
   global $uid_support;
-    if (isset($id)) {
+    if ($id) {
        if (is_array($id)) {
           $id = sqimap_message_list_squisher($id);
        }
        $id = ' '.$id;
+       $uid = $uid_support;
+    } else {
+       $uid = false;
     }
-    $read = sqimap_run_command($imap_stream, 'EXPUNGE$id', $handle_errors,
-                               $response, $message, $uid_support);
+    $read = sqimap_run_command($imap_stream, 'EXPUNGE'.$id, $handle_errors,
+                               $response, $message, $uid);
     $cnt = 0;			       
     foreach ($read as $r) {
-       if (pregmatch('/^\*\s[0-9]+\sEXPUNGE/AUi',$r,$regs)) {
+       if (preg_match('/^\*\s[0-9]+\sEXPUNGE/AUi',$r,$regs)) {
           $cnt++;
        }
     }