Hi David,

> > Perhaps have mark work on it as it already partially does.  `mark
> > -seq cur -delete all'.
>
> How about this, Ralph?  Instead of setting "cur" to 0, it ends up
> removing it from .mh_sequences.  That's the same state as never having
> set cur.

Sounds good.

> @@ -80,8 +80,14 @@ seq_delsel (struct msgs *mp, char *cp, int public, int 
> zero)
>       * Now clear the bit on all selected messages
>       */
> -    for (msgnum = mp->lowsel; msgnum <= mp->hghsel; msgnum++)
> +    for (msgnum = mp->lowsel; msgnum <= mp->hghsel; msgnum++) {
>         if (is_selected (mp, msgnum))
>             clear_sequence (mp, i, msgnum);
>
> +       if (! strcmp ("cur", cp)  &&  mp->curmsg == msgnum) {
> +           /* Removed current message indication, so reset curmsg. */
> +           mp->curmsg = 0;
> +       }
> +    }
> +

Does the test need to be in the for-loop, running on every message?
Perhaps

    if (!strcmp(cp, current) &&
        mp->curmsg >= mp->lowsel && mp->curmsg <= mp->hghsel) {
        /* Removed current message indication, so reset curmsg. */
        mp->curmsg = 0;
    }

afterwards?  (Note use of `current'.)

Cheers, Ralph.

_______________________________________________
Nmh-workers mailing list
Nmh-workers@nongnu.org
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Reply via email to