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

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

    ! switch(ret) {
    ! case sessionlock_fail:
    ! goto fail_it;
    ! case sessionlock_open:
    ! if (was_reconnected) {
    ! DPRINT(Debug,10,(&Debug, "Was reconnected when truncating?\n"));
    ! read_mode = read_hdr_reconnect;
    ! } else
    ! read_mode = read_hdr_normal;
    ! goto reread;
    ! case sessionlock_reconnect:
    ! read_mode = read_hdr_reconnect;
    !
    goto reread;
    + }
    }
    goto fail_it;
    }
    ***************
    *** 330,338 ****

    fail_it:

    ! if (!same_file)
    ! free_storage(&storage);
    !
    rm_temps_exit(); /* ???? TODO -- is needed? */
    }

    --- 670,697 ----

    fail_it:

    ! if (!same_file) {
    ! int r;
    ! struct cancel_data *cd =
    ! new_schedule_cancel(exit_delay_msec,
    ! CATGETS(elm_msg_cat, ElmSet,
    ! ElmLeavingMailbox,
    ! "Leaving mailbox ..."));
    ! DPRINT(Debug,9, (&Debug,
    ! "newmbox_1: freeing storage\n"));
    ! r = free_storage(&storage,cd);
    ! if (!r) {
    ! DPRINT(Debug,9, (&Debug,
    ! "newmbox_1: free_storage failed\n"));
    ! }
    ! if (is_canceled(cd)) {
    ! DPRINT(Debug,9, (&Debug,
    ! "newmbox_1: Cancel on free_storage\n"));
    ! }
    ! free_cancel(&cd);
    !
    ! }
    !
    rm_temps_exit(); /* ???? TODO -- is needed? */
    }

    ***************
    *** 340,347 ****
    if(!same_file) {

    if (!append) {
    ! if (*mailbox)
    ! free_mailbox(mailbox);
    *mailbox = malloc_mailbox_view(storage);
    } else
    add_storage(*mailbox,storage);
    --- 699,724 ----
    if(!same_file) {

    if (!append) {
    ! if (*mailbox) {