X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/4dff00a2d1a9e0b1e301c3015d8f7bdf87e2e37a..db50a93031e37e78e38b318c40a2d4a045b72900:/sbr/seq_save.c diff --git a/sbr/seq_save.c b/sbr/seq_save.c index a431804e..5b06dcdf 100644 --- a/sbr/seq_save.c +++ b/sbr/seq_save.c @@ -24,7 +24,7 @@ void seq_save (struct msgs *mp) { - int i; + size_t i; char flags, *cp, attr[BUFSIZ], seqfile[PATH_MAX]; FILE *fp; sigset_t set, oset; @@ -54,11 +54,12 @@ seq_save (struct msgs *mp) else snprintf (seqfile, sizeof(seqfile), "%s/%s", mp->foldpath, mh_seq); - for (i = 0; mp->msgattrs[i]; i++) { - snprintf (attr, sizeof(attr), "atr-%s-%s", mp->msgattrs[i], mp->foldpath); + for (i = 0; i < svector_size (mp->msgattrs); i++) { + snprintf (attr, sizeof(attr), "atr-%s-%s", + svector_at (mp->msgattrs, i), mp->foldpath); /* get space separated list of sequence ranges */ - if (!(cp = seq_list(mp, mp->msgattrs[i]))) { + if (!(cp = seq_list(mp, svector_at (mp->msgattrs, i)))) { context_del (attr); /* delete sequence from context */ continue; } @@ -90,7 +91,7 @@ priv: rewind(fp); ftruncate(fileno(fp), 0); } else if ((fp = lkfopendata (seqfile, "w")) == NULL - && (unlink (seqfile) == -1 || + && (m_unlink (seqfile) == -1 || (fp = lkfopendata (seqfile, "w")) == NULL)) { admonish (attr, "unable to write"); goto priv; @@ -104,7 +105,7 @@ priv: sigaddset(&set, SIGTERM); sigprocmask (SIG_BLOCK, &set, &oset); } - fprintf (fp, "%s: %s\n", mp->msgattrs[i], cp); + fprintf (fp, "%s: %s\n", svector_at (mp->msgattrs, i), cp); } } @@ -117,7 +118,7 @@ priv: * public sequences, then remove that file. */ if (!is_readonly(mp)) - unlink (seqfile); + (void) m_unlink (seqfile); } /*