X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/81a21a9a97d8633f6d6231e31fdb6e328d0d3ff2..c576ad2674c37a1c63f004c71049998f38854c64:/sbr/seq_list.c diff --git a/sbr/seq_list.c b/sbr/seq_list.c index ecc03bfd..b7ed5707 100644 --- a/sbr/seq_list.c +++ b/sbr/seq_list.c @@ -1,10 +1,6 @@ - -/* - * seq_list.c -- Get all messages in a sequence and return them +/* 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. @@ -41,10 +37,10 @@ seq_list(struct msgs *mp, char *seqname) */ if (!strcmp (current, seqname)) { if (mp->curmsg) { - sprintf(buffer, "%s", m_name(mp->curmsg)); - return (buffer); - } else - return (NULL); + snprintf(buffer, len, "%s", m_name(mp->curmsg)); + return buffer; + } + return NULL; } /* If the folder is empty, just return NULL */ @@ -75,8 +71,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 +83,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,9 +95,10 @@ 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); } } - return (bp > buffer? buffer : NULL); + return bp > buffer ? buffer : NULL; }