alecpl
2010-08-04 a31dd088265593b80a70764af7906e63abe46933
- Replace chop() with rtrim(), small improvements in fetchHeaders()


1 files modified
33 ■■■■■ changed files
program/include/rcube_imap_generic.php 33 ●●●●● patch | view | raw | blame | history
program/include/rcube_imap_generic.php
@@ -191,7 +191,7 @@
                break;
            }
            if (!empty($this->prefs['debug_mode'])) {
                write_log('imap', 'S: '. chop($buffer));
                write_log('imap', 'S: '. rtrim($buffer));
            }
            $line .= $buffer;
        } while ($buffer[strlen($buffer)-1] != "\n");
@@ -201,7 +201,7 @@
    private function multLine($line, $escape=false)
    {
        $line = chop($line);
        $line = rtrim($line);
        if (preg_match('/\{[0-9]+\}$/', $line)) {
            $out = '';
@@ -749,7 +749,7 @@
        if ($this->putLine("sel1 SELECT \"".$this->escape($mailbox).'"')) {
            do {
                $line = chop($this->readLine(300));
                $line = rtrim($this->readLine(300));
                $a = explode(' ', $line);
                if (count($a) == 3) {
                    $token = strtoupper($a[2]);
@@ -840,7 +840,7 @@
            return false;
        }
        do {
            $line = chop($this->readLine());
            $line = rtrim($this->readLine());
            if ($this->startsWith($line, '* SORT')) {
                $data .= substr($line, 7);
            } else if (preg_match('/^[0-9 ]+$/', $line)) {
@@ -924,7 +924,7 @@
        $result = array();
        do {
            $line = chop($this->readLine(200));
            $line = rtrim($this->readLine(200));
            $line = $this->multLine($line);
            if (preg_match('/^\* ([0-9]+) FETCH/', $line, $m)) {
@@ -1053,7 +1053,7 @@
        $result = -1;
        if ($this->putLine("fuid FETCH $id (UID)")) {
            do {
                $line = chop($this->readLine(1024));
                $line = rtrim($this->readLine(1024));
                if (preg_match("/^\* $id FETCH \(UID (.*)\)/i", $line, $r)) {
                    $result = $r[1];
                }
@@ -1111,10 +1111,8 @@
            if (!$line)
                break;
            $a    = explode(' ', $line);
            if (($line[0] == '*') && ($a[2] == 'FETCH')) {
                $id = $a[1];
            if (preg_match('/^\* ([0-9]+) FETCH/', $line, $m)) {
                $id = $m[1];
                $result[$id]            = new rcube_mail_header;
                $result[$id]->id        = $id;
@@ -1188,7 +1186,7 @@
                // to the next valid header line.
                do {
                    $line = chop($this->readLine(300), "\r\n");
                    $line = rtrim($this->readLine(300), "\r\n");
                    // The preg_match below works around communigate imap, which outputs " UID <number>)".
                    // Without this, the while statement continues on and gets the "FH0 OK completed" message.
@@ -1290,8 +1288,6 @@
                            break;
                        } // end switch ()
                    } // end while ()
                } else {
                    $a = explode(' ', $line);
                }
                // process flags
@@ -1300,7 +1296,6 @@
                    $flags_a   = explode(' ', $flags_str);
                    if (is_array($flags_a)) {
                    //    reset($flags_a);
                        foreach($flags_a as $flag) {
                            $flag = strtoupper($flag);
                            if ($flag == 'SEEN') {
@@ -1451,7 +1446,7 @@
        }
        do {
            $line = $this->readLine(1000);
            $line = $this->readLine();
            if ($line[0] == '*') {
                $c++;
            }
@@ -1607,7 +1602,7 @@
        }
        $data = '';
        $query = 'srch1 ' . ($return_uid ? 'UID ' : '') . 'SEARCH ' . chop($criteria);
        $query = 'srch1 ' . ($return_uid ? 'UID ' : '') . 'SEARCH ' . trim($criteria);
        if (!$this->putLineC($query)) {
            return false;
@@ -1732,7 +1727,7 @@
        }
        do {
            $line = $this->readLine(1000);
            $line = $this->readLine(1024);
            $line = $this->multLine($line);
            if (preg_match('/BODY\[([0-9\.]+)\.'.$type.'\]/', $line, $matches)) {
@@ -1788,7 +1783,7 @@
           // receive reply line
           do {
               $line = chop($this->readLine(1000));
               $line = rtrim($this->readLine(1024));
               $a    = explode(' ', $line);
           } while (!($end = $this->startsWith($line, $key, true)) && $a[2] != 'FETCH');
@@ -2113,7 +2108,7 @@
        // get line(s) containing quota info
        if ($this->putLine('QUOT1 GETQUOTAROOT "INBOX"')) {
            do {
                $line = chop($this->readLine(5000));
                $line = rtrim($this->readLine(5000));
                if ($this->startsWith($line, '* QUOTA ')) {
                    $quota_lines[] = $line;
                }