• Patch: Elm ME+ 2.5 PLalpha49 -> Elm ME+ 2.5 PLalpha50 [7/7] (2/2)

    From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:56:34 2019
    [continued from previous message]

    ! case sessionlock_open:
    !
    ! DPRINT(Debug,10,(&Debug,
    ! "newmail: %s opened.\n",
    ! cur_folder->F -> cur_folder_sys)); ! if (0) {
    ! case sessionlock_reconnect:
    ! DPRINT(Debug,10,(&Debug,
    ! "newmail: %s opened, was reconnected.\n",
    ! cur_folder->F -> cur_folder_sys));
    ! }
    !
    ! {
    ! struct read_folder_state * read_state_ptr = NULL;
    !
    ! /* Updates folder reference size for new_mail_on_folder() */
    ! if (prepare_read_folder(cur_folder->F,PREPARE_NOLOCK,
    ! &read_state_ptr,NULL)) {
    ! end_read_folder(cur_folder->F,&read_state_ptr,NULL,1);
    ! }
    ! }
    ! break;
    }
    }
    + break;
    }
    }
    !
    if (POLL_method)
    wait_for_timeout(interval_time);
    else
    ***************
    *** 465,471 ****
    }
    clean_exit:
    for (i = 0; i < total_folders; i++) {
    ! close_folder(folder_list[i].F,CLOSE_NORMAL);
    }
    return ret;
    }
    --- 595,607 ----
    }
    clean_exit:
    for (i = 0; i < total_folders; i++) {
    ! int r = close_folder(folder_list[i].F,CLOSE_NORMAL,
    ! /* struct cancel_data * cd */ NULL
    ! );
    ! if (!r) {
    ! DPRINT(Debug,9, (&Debug,
    ! "newmail: close_folder failed\n"));
    ! }
    }
    return ret;
    }
    ***************
    *** 581,593 ****
    header_list_ptr parsed_headers;
    struct counter_data *counter;
    {
    char * buffer;
    int len;
    long content_remaining = -1L;

    content_remaining = entry->content_length;

    !
    reset_body:

    while (copy_body_folder(folder,read_state_ptr,
    --- 717,740 ----
    header_list_ptr parsed_headers;
    struct counter_data *counter;
    {
    + int ret = 0;
    char * buffer;
    int len;
    long content_remaining = -1L;
    + enum copy_env_end_status endstat = copy_env_end_failure;
    + long newbytes = 0;
    + int newmails = 0;

    content_remaining = entry