]> diplodocus.org Git - nmh/blob - sbr/seq_setprev.c
Fix invalid pointer arithmetic.
[nmh] / sbr / seq_setprev.c
1 /* seq_setprev.c -- set the Previous-Sequence
2 *
3 * This code is Copyright (c) 2002, by the authors of nmh. See the
4 * COPYRIGHT file in the root directory of the nmh distribution for
5 * complete copyright information.
6 */
7
8 #include <h/mh.h>
9 #include <h/utils.h>
10
11 /*
12 * Add all the messages currently SELECTED to
13 * the Previous-Sequence. This way, when the next
14 * command is given, there is a convenient way to
15 * selected all the messages used in the previous
16 * command.
17 */
18
19 void
20 seq_setprev (struct msgs *mp)
21 {
22 char **ap, *cp, *dp;
23
24 /*
25 * Get the list of sequences for Previous-Sequence
26 * and split them.
27 */
28 if (!(cp = context_find(psequence)))
29 return;
30 dp = mh_xstrdup(cp);
31 if (!(ap = brkstring(dp, " ", "\n")) || !*ap) {
32 free(dp);
33 return;
34 }
35
36 /* Now add all SELECTED messages to each sequence */
37 for (; *ap; ap++)
38 seq_addsel (mp, *ap, -1, 1);
39
40 free (dp);
41 }