Revision 1639 trunk/nntpgrab_core/nntpconnection.c

nntpconnection.c (revision 1639)
436 436

                
437 437
    /* Only read from the socket when there's no newline in the buffer or when we need
438 438
     * to read raw data which is already buffered */
439
    if ((!read_line) ||
439
    if ((!read_line && conn->recv_buffer_length == 0) ||
440
        (!read_line && conn->recv_buffer_length == 1 && conn->recv_buffer[0] == '\n') ||                                 /* Pushed back data by the trim_newlines function */
441
        (!read_line && conn->recv_buffer_length == 2 && conn->recv_buffer[0] == '\n' && conn->recv_buffer[1] == '.') ||  /* Pushed back data by the trim_newlines function */
440 442
        (read_line && !strstr(conn->recv_buffer, "\n"))) {
441 443

                
442 444
        if (!perform_recv(conn, &try_again) && (!try_again || conn->recv_buffer_length == 0)) {

Also available in: Unified diff