Browse Source

I believe this code worked by chance, redefining it from string to array and
using it outside the code block it was defined in. This should repair it to
what was intended.

Thijs Kinkhorst 13 years ago
parent
commit
c323e82aca
1 changed files with 10 additions and 9 deletions
  1. 10 9
      functions/imap_general.php

+ 10 - 9
functions/imap_general.php

@@ -1078,18 +1078,19 @@ function sqimap_get_delimiter ($imap_stream = false) {
             if (preg_match('/\* NAMESPACE +(\( *\(.+\) *\)|NIL) +(\( *\(.+\) *\)|NIL) +(\( *\(.+\) *\)|NIL)/i', $read[0], $data)) {
             if (preg_match('/\* NAMESPACE +(\( *\(.+\) *\)|NIL) +(\( *\(.+\) *\)|NIL) +(\( *\(.+\) *\)|NIL)/i', $read[0], $data)) {
                 if (preg_match('/^\( *\((.*)\) *\)/', $data[1], $data2)) {
                 if (preg_match('/^\( *\((.*)\) *\)/', $data[1], $data2)) {
                     $pn = $data2[1];
                     $pn = $data2[1];
-                }
-                $pna = explode(')(', $pn);
-                while (list($k, $v) = each($pna)) {
-                    $lst = explode('"', $v);
-                    if (isset($lst[3])) {
-                        $pn[$lst[1]] = $lst[3];
-                    } else {
-                        $pn[$lst[1]] = '';
+                    $pna = explode(')(', $pn);
+                    $delnew = array();
+                    while (list($k, $v) = each($pna)) {
+                        $lst = explode('"', $v);
+                        if (isset($lst[3])) {
+                            $delnew[$lst[1]] = $lst[3];
+                        } else {
+                            $delnew[$lst[1]] = '';
+                        }
                     }
                     }
+                    $sqimap_delimiter = array_shift($delnew);
                 }
                 }
             }
             }
-            $sqimap_delimiter = $pn[0];
         } else {
         } else {
             fputs ($imap_stream, ". LIST \"INBOX\" \"\"\r\n");
             fputs ($imap_stream, ". LIST \"INBOX\" \"\"\r\n");
             $read = sqimap_read_data($imap_stream, '.', true, $a, $b);
             $read = sqimap_read_data($imap_stream, '.', true, $a, $b);