Changeset 2814 in subversion


Ignore:
Timestamp:
Jul 30, 2009 7:56:10 AM (4 years ago)
Author:
alec
Message:
  • Fix endless loop in iil_C_Login() with Courier IMAP (#1486010)
Location:
trunk/roundcubemail
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/roundcubemail/CHANGELOG

    r2810 r2814  
    22=========================== 
    33 
     4- Fix endless loop in iil_C_Login() with Courier IMAP (#1486010) 
    45- Fix #messagemenu display on IE (#1486006) 
    56- Speedup UI by using sprites for (toolbar) buttons 
  • trunk/roundcubemail/program/lib/imap.inc

    r2749 r2814  
    244244        do { 
    245245                $buffer = fgets($fp, $size); 
     246 
    246247                if ($buffer === false) { 
    247248                        break; 
     
    251252                $line .= $buffer; 
    252253        } while ($buffer[strlen($buffer)-1] != "\n"); 
    253          
     254 
    254255        return $line; 
    255256} 
     
    291292} 
    292293 
     294// don't use it in loops, until you exactly know what you're doing 
    293295function iil_ReadReply($fp) { 
    294296        do { 
    295297                $line = trim(iil_ReadLine($fp, 1024)); 
    296298        } while ($line[0] == '*'); 
    297          
     299 
    298300        return $line; 
    299301} 
     
    443445    iil_PutLine($conn->fp, 'a001 LOGIN "'.iil_Escape($user).'" "'.iil_Escape($password).'"'); 
    444446 
    445     do { 
    446         $line = iil_ReadReply($conn->fp); 
    447         if ($line === false) { 
    448             break; 
    449         } 
    450     } while (!iil_StartsWith($line, 'a001 ', true)); 
    451      
     447    $line = iil_ReadReply($conn->fp); 
     448 
    452449    // process result 
    453450    $result = iil_ParseResult($line); 
     
    590587                $IMAP_USE_INTERNAL_DATE = false; 
    591588        } 
    592         //echo '<!-- conn sort_field: '.$my_prefs['sort_field'].' //-->'; 
    593589         
    594590        //check input 
     
    626622        stream_set_timeout($conn->fp, 10); 
    627623        $line = stream_get_line($conn->fp, 8192, "\r\n"); 
     624 
     625        if ($my_prefs['debug_mode'] && $line) 
     626                write_log('imap', 'S: '. $line); 
    628627 
    629628        // Connected to wrong port or connection error? 
     
    636635                return false; 
    637636        } 
    638          
     637 
    639638        // RFC3501 [7.1] optional CAPABILITY response 
    640639        if (preg_match('/\[CAPABILITY ([^]]+)\]/i', $line, $matches)) { 
     
    18341833                 
    18351834                iil_PutLine($fp, "cpy1 UID COPY $messages \"".iil_Escape($to)."\""); 
    1836                 $line=iil_ReadReply($fp); 
     1835                $line = iil_ReadReply($fp); 
    18371836                return iil_ParseResult($line); 
    18381837        } else { 
Note: See TracChangeset for help on using the changeset viewer.