fix regression. make the hook types be ints.
[apps/madmutt.git] / sort.c
diff --git a/sort.c b/sort.c
index 93ba2e4..c19ef98 100644 (file)
--- a/sort.c
+++ b/sort.c
 # include "config.h"
 #endif
 
+#include <lib-lib/macros.h>
+#include <lib-lib/str.h>
+
 #include "mutt.h"
-#include "lib/str.h"
 #include "sort.h"
+#include "thread.h"
 #include "mutt_idna.h"
 
-#include "lib/intl.h"
 
 #include <stdlib.h>
 #include <string.h>
@@ -81,14 +83,14 @@ int compare_subject (const void *a, const void *b)
   else if (!(*pb)->env->real_subj)
     rc = 1;
   else
-    rc = str_casecmp ((*pa)->env->real_subj, (*pb)->env->real_subj);
+    rc = m_strcasecmp((*pa)->env->real_subj, (*pb)->env->real_subj);
   AUXSORT (rc, a, b);
   return (SORTCODE (rc));
 }
 
-const char *mutt_get_name (ADDRESS * a)
+const char *mutt_get_name (address_t * a)
 {
-  ADDRESS *ali;
+  address_t *ali;
   const char *name = "";
 
   if (a) {
@@ -116,13 +118,10 @@ int compare_to (const void *a, const void *b)
    * On the next call that pointer may get smashed so we copy the return value
    * to our own memory space. */
 
-  strncpy (fa, mutt_get_name ((*ppa)->env->to), sizeof (fa));
-  fa[sizeof (fa) - 1] = '\0';
-
-  strncpy (fb, mutt_get_name ((*ppb)->env->to), sizeof (fb));
-  fb[sizeof (fb) - 1] = '\0';
+  m_strcpy(fa, sizeof(fa), mutt_get_name((*ppa)->env->to));
+  m_strcpy(fb, sizeof(fb), mutt_get_name((*ppb)->env->to));
 
-  result = str_casecmp (fa, fb);
+  result = m_strcasecmp(fa, fb);
   AUXSORT (result, a, b);
   return (SORTCODE (result));
 }
@@ -139,13 +138,10 @@ int compare_from (const void *a, const void *b)
    * On the next call that pointer may get smashed so we copy the return value
    * to our own memory space. */
 
-  strncpy (fa, mutt_get_name ((*ppa)->env->from), sizeof (fa));
-  fa[sizeof (fa) - 1] = '\0';
-
-  strncpy (fb, mutt_get_name ((*ppb)->env->from), sizeof (fb));
-  fb[sizeof (fb) - 1] = '\0';
+  m_strcpy(fa, sizeof(fa), mutt_get_name((*ppa)->env->from));
+  m_strcpy(fb, sizeof(fb), mutt_get_name((*ppb)->env->from));
 
-  result = str_casecmp (fa, fb);
+  result = m_strcasecmp(fa, fb);
   AUXSORT (result, a, b);
   return (SORTCODE (result));
 }
@@ -213,13 +209,13 @@ int compare_spam (const void *a, const void *b)
   /* If either aptr or bptr is equal to data, there is no numeric    */
   /* value for that spam attribute. In this case, compare lexically. */
   if ((aptr == (*ppa)->env->spam->data) || (bptr == (*ppb)->env->spam->data))
-    return (SORTCODE (str_cmp (aptr, bptr)));
+    return (SORTCODE (m_strcmp(aptr, bptr)));
 
   /* Otherwise, we have numeric value for both attrs. If these values */
   /* are equal, then we first fall back upon string comparison, then  */
   /* upon auxiliary sort.                                             */
   if (result == 0) {
-    result = str_cmp (aptr, bptr);
+    result = m_strcmp(aptr, bptr);
     if (result == 0)
       AUXSORT (result, a, b);
   }