mutt_extract_token (&templ, s, 0); } else { templ.data = NULL; templ.dsize = 0;
if (MoreArgs(s)) { mutt_extract_token (&templ, s, 0);   if (add_to_spam_list (&SpamList, buf->data, templ.data, err) != 0) return -1; }   else { remove_from_rx_list(&NoSpamList, buf->data); }  return 0;
static int parse_spam_list (BUFFER *buf, BUFFER *s, unsigned long data, BUFFER *err){  BUFFER templ;  memset(&templ, 0, sizeof(templ));  if (!MoreArgs(s))  {    strfcpy(err->data, _("spam: no matching pattern"), err->dsize);    return -1;  }  mutt_extract_token (buf, s, 0);  if (MoreArgs(s))  {    mutt_extract_token (&templ, s, 0);  }  else  {    templ.data = NULL;    templ.dsize = 0;  }  if (add_to_spam_list ((SPAM_LIST **) data, buf->data, templ.data, err) != 0)      return -1;    return 0;}