Rocco Rutte:
[apps/madmutt.git] / muttlib.c
index 6b9258f..676b922 100644 (file)
--- a/muttlib.c
+++ b/muttlib.c
 
 #include "mutt_crypt.h"
 
+#include "lib/mem.h"
+#include "lib/intl.h"
+#include "lib/str.h"
+
 #include <string.h>
 #include <ctype.h>
 #include <unistd.h>
@@ -361,8 +365,8 @@ char *_mutt_expand_path (char *s, size_t slen, int rx)
 #ifdef USE_IMAP
         /* if folder = {host} or imap[s]://host/: don't append slash */
         if (mx_is_imap (NONULL (Maildir)) &&
-            (Maildir[strlen (Maildir) - 1] == '}' ||
-             Maildir[strlen (Maildir) - 1] == '/'))
+            (Maildir[mutt_strlen (Maildir) - 1] == '}' ||
+             Maildir[mutt_strlen (Maildir) - 1] == '/'))
           strfcpy (p, NONULL (Maildir), sizeof (p));
         else
 #endif
@@ -494,7 +498,7 @@ char *mutt_gecos_name (char *dest, size_t destlen, struct passwd *pw)
   else
     strfcpy (dest, pw->pw_gecos, destlen);
 
-  pwnl = strlen (pw->pw_name);
+  pwnl = mutt_strlen (pw->pw_name);
 
   for (idx = 0; dest[idx]; idx++) {
     if (dest[idx] == '&') {
@@ -1235,7 +1239,7 @@ void state_prefix_putc (char c, STATE * s)
   if (s->flags & M_PENDINGPREFIX) {
     int i;
 
-    i = strlen (Quotebuf);
+    i = mutt_strlen (Quotebuf);
     Quotebuf[i++] = c;
     Quotebuf[i] = '\0';
     if (i == sizeof (Quotebuf) - 1 || c == '\n') {
@@ -1336,7 +1340,7 @@ BUFFER *mutt_buffer_init (BUFFER * b)
       return NULL;
   }
   else {
-    safe_free (b->data);
+    FREE(&b->data);
   }
   memset (b, 0, sizeof (BUFFER));
   return b;
@@ -1433,40 +1437,6 @@ const char *mutt_make_version (void)
   return vstring;
 }
 
-REGEXP *mutt_compile_regexp (const char *s, int flags)
-{
-  REGEXP *pp = safe_calloc (sizeof (REGEXP), 1);
-
-  pp->pattern = safe_strdup (s);
-  pp->rx = safe_calloc (sizeof (regex_t), 1);
-  if (REGCOMP (pp->rx, NONULL (s), flags) != 0)
-    mutt_free_regexp (&pp);
-
-  return pp;
-}
-
-void mutt_free_regexp (REGEXP ** pp)
-{
-  FREE (&(*pp)->pattern);
-  regfree ((*pp)->rx);
-  FREE (&(*pp)->rx);
-  FREE (pp);
-}
-
-void mutt_free_rx_list (RX_LIST ** list)
-{
-  RX_LIST *p;
-
-  if (!list)
-    return;
-  while (*list) {
-    p = *list;
-    *list = (*list)->next;
-    mutt_free_regexp (&p->rx);
-    FREE (&p);
-  }
-}
-
 void mutt_free_spam_list (SPAM_LIST ** list)
 {
   SPAM_LIST *p;
@@ -1476,29 +1446,12 @@ void mutt_free_spam_list (SPAM_LIST ** list)
   while (*list) {
     p = *list;
     *list = (*list)->next;
-    mutt_free_regexp (&p->rx);
-    safe_free (&p->template);
-    FREE (&p);
+    rx_free (&p->rx);
+    FREE(&p->template);
+    FREE(&p);
   }
 }
 
-int mutt_match_rx_list (const char *s, RX_LIST * l)
-{
-  if (!s)
-    return 0;
-
-  for (; l; l = l->next) {
-    if (regexec (l->rx->rx, s, (size_t) 0, (regmatch_t *) 0, (int) 0) == 0) {
-      dprint (5,
-              (debugfile, "mutt_match_rx_list: %s matches %s\n", s,
-               l->rx->pattern));
-      return 1;
-    }
-  }
-
-  return 0;
-}
-
 int mutt_match_spam_list (const char *s, SPAM_LIST * l, char *text, int x)
 {
   static regmatch_t *pmatch = NULL;