]> granicus.if.org Git - mutt/commitdiff
Convert mutt_parse_adrlist() to use BUFFER for simple parsing.
authorKevin McCarthy <kevin@8t8.us>
Mon, 22 Apr 2019 03:05:13 +0000 (20:05 -0700)
committerKevin McCarthy <kevin@8t8.us>
Mon, 22 Apr 2019 03:05:13 +0000 (20:05 -0700)
parse.c

diff --git a/parse.c b/parse.c
index 47e0f08434d3f80707cb380baa1a199033cea6da..8f307aedcf01a6e269ba0065bd66332000176edc 100644 (file)
--- a/parse.c
+++ b/parse.c
@@ -1520,16 +1520,18 @@ ADDRESS *mutt_parse_adrlist (ADDRESS *p, const char *s)
   /* check for a simple whitespace separated list of addresses */
   if ((q = strpbrk (s, "\"<>():;,\\")) == NULL)
   {
-    char tmp[HUGE_STRING];
+    BUFFER *tmp;
     char *r;
 
-    strfcpy (tmp, s, sizeof (tmp));
-    r = tmp;
+    tmp = mutt_buffer_pool_get ();
+    mutt_buffer_strcpy (tmp, s);
+    r = tmp->data;
     while ((r = strtok (r, " \t")) != NULL)
     {
       p = rfc822_parse_adrlist (p, r);
       r = NULL;
     }
+    mutt_buffer_pool_release (&tmp);
   }
   else
     p = rfc822_parse_adrlist (p, s);