X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/6c42153ad9362cc676ea66563bf400d7511b3b68..eb9d95f038fd0268a821ab332df24ce2592b7482:/sbr/seq_save.c?ds=inline diff --git a/sbr/seq_save.c b/sbr/seq_save.c index 6366e5eb..4055f9d5 100644 --- a/sbr/seq_save.c +++ b/sbr/seq_save.c @@ -3,8 +3,6 @@ * seq_save.c -- 1) synchronize sequences * -- 2) save public sequences * - * $Id$ - * * This code is Copyright (c) 2002, by the authors of nmh. See the * COPYRIGHT file in the root directory of the nmh distribution for * complete copyright information. @@ -31,10 +29,6 @@ seq_save (struct msgs *mp) FILE *fp; sigset_t set, oset; - /* sanity check - check that context has been read */ - if (defpath == NULL) - adios (NULL, "oops, context hasn't been read yet"); - /* check if sequence information has changed */ if (!(mp->msgflags & SEQMOD)) return; @@ -80,9 +74,9 @@ priv: * If that fails (probably because folder is * readonly), then make sequence private. */ - if ((fp = fopen (seqfile, "w")) == NULL + if ((fp = lkfopen (seqfile, "w")) == NULL && (unlink (seqfile) == -1 || - (fp = fopen (seqfile, "w")) == NULL)) { + (fp = lkfopen (seqfile, "w")) == NULL)) { admonish (attr, "unable to write"); goto priv; } @@ -93,15 +87,15 @@ priv: sigaddset(&set, SIGINT); sigaddset(&set, SIGQUIT); sigaddset(&set, SIGTERM); - SIGPROCMASK (SIG_BLOCK, &set, &oset); + sigprocmask (SIG_BLOCK, &set, &oset); } fprintf (fp, "%s: %s\n", mp->msgattrs[i], cp); } } if (fp) { - fclose (fp); - SIGPROCMASK (SIG_SETMASK, &oset, &set); /* reset signal mask */ + lkfclose (fp, seqfile); + sigprocmask (SIG_SETMASK, &oset, &set); /* reset signal mask */ } else { /* * If folder is not readonly, and we didn't save any