* replsbr.c -- routines to help repl along...
*
* $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.
*/
#include <h/mh.h>
register char **nxtbuf;
register char **ap;
register struct comp **savecomp;
- int char_read = 0, format_len;
+ int char_read = 0, format_len, mask;
char name[NAMESZ], *scanl, *cp;
FILE *out;
- umask(~m_gmprot());
+ mask = umask(~m_gmprot());
if ((out = fopen (drft, "w")) == NULL)
adios (drft, "unable to create");
+ umask(mask);
+
/* get new format string */
cp = new_fs (form, NULL, NULL);
format_len = strlen (cp);
tmpbuf = *nxtbuf++;
} else {
i = strlen (cp = cptr->c_text) - 1;
- if (cp[i] == '\n')
+ if (cp[i] == '\n') {
if (cptr->c_type & CT_ADDR) {
cp[i] = '\0';
cp = add (",\n\t", cp);
} else {
cp = add ("\t", cp);
}
+ }
cptr->c_text = add (tmpbuf, cp);
}
while (state == FLDPLUS) {
/* return dynamically allocated buffers */
free (scanl);
- for (nxtbuf = compbuffers, i = ncomps; cptr = *savecomp++; nxtbuf++, i--)
+ for (nxtbuf = compbuffers, i = ncomps; (cptr = *savecomp++); nxtbuf++, i--)
free (cptr->c_text); /* if not nxtbuf, nxtbuf already freed */
while ( i-- > 0)
free (*nxtbuf++); /* free unused nxtbufs */
}
/* concatenate all the new addresses onto 'buf' */
- for (isgroup = 0; cp = getname (str); ) {
+ for (isgroup = 0; (cp = getname (str)); ) {
if ((mp = getm (cp, dfhost, dftype, AD_NAME, error)) == NULL) {
snprintf (baddr, sizeof(baddr), "\t%s -- %s\n", cp, error);
badaddrs = add (baddr, badaddrs);