]> diplodocus.org Git - nmh/blobdiff - sbr/seq_list.c
Replace `(char *)0' et al with `NULL'.
[nmh] / sbr / seq_list.c
index 8a440691a417eaca0eea716d1c569d92b9a430c4..702def8b8212764f41f4a24d26639d6761124193 100644 (file)
@@ -3,14 +3,13 @@
  * seq_list.c -- Get all messages in a sequence and return them
  *            -- as a space separated list of message ranges.
  *
- * $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>
+#include <h/utils.h>
 
 /* allocate this much buffer space at a time */
 #define MAXBUFFER 1024
@@ -29,8 +28,7 @@ seq_list(struct msgs *mp, char *seqname)
     /* On first invocation, allocate initial buffer space */
     if (!buffer) {
        len = MAXBUFFER;
-       if (!(buffer = malloc ((size_t) len)))
-           adios (NULL, "unable to malloc storage in seq_list");
+       buffer = mh_xmalloc ((size_t) len);
     }
 
     /*
@@ -41,7 +39,7 @@ seq_list(struct msgs *mp, char *seqname)
      */
     if (!strcmp (current, seqname)) {
        if (mp->curmsg) {       
-           sprintf(buffer, "%s", m_name(mp->curmsg));
+           snprintf(buffer, len, "%s", m_name(mp->curmsg));
            return (buffer);
        } else
            return (NULL);
@@ -75,8 +73,7 @@ seq_list(struct msgs *mp, char *seqname)
            char *newbuf;
 
            len += MAXBUFFER;
-           if (!(newbuf = realloc (buffer, (size_t) len)))
-               adios (NULL, "unable to realloc storage in seq_list");
+           newbuf = mh_xrealloc (buffer, (size_t) len);
            bp = newbuf + (bp - buffer);
            buffer = newbuf;
        }
@@ -88,7 +85,7 @@ seq_list(struct msgs *mp, char *seqname)
        if (bp > buffer)
            *bp++ = ' ';
 
-       sprintf(bp, "%s", m_name(i));
+       strcpy(bp, m_name(i));
        bp += strlen(bp);
        j = i;                  /* Remember beginning of message range */
 
@@ -100,7 +97,8 @@ seq_list(struct msgs *mp, char *seqname)
            ;
 
        if (i - j > 1) {
-           sprintf(bp, "-%s", m_name(i - 1));
+            *bp++ = '-';
+           strcpy(bp, m_name(i - 1));
            bp += strlen(bp);
        }
     }