oops :)
[apps/madmutt.git] / lib-crypt / crypt-gpgme.c
index 7b85ab6..0f0b00f 100644 (file)
@@ -2126,8 +2126,8 @@ int smime_gpgme_application_handler (BODY * a, STATE * s)
 static const char *
 crypt_entry_fmt (char *dest, ssize_t destlen, char op,
                  const char *src, const char *prefix,
-                 const char *ifstring, const char *elsestring,
-                 unsigned long data, format_flag flags)
+                 const char *ifstr, const char *elstr,
+                 anytype data, format_flag flags)
 {
   char fmt[16];
   crypt_entry_t *entry;
@@ -2137,7 +2137,7 @@ crypt_entry_fmt (char *dest, ssize_t destlen, char op,
   const char *s = NULL;
   unsigned long val;
 
-  entry = (crypt_entry_t *) data;
+  entry = data.ptr;
   key = entry->key;
 
 /*    if (isupper ((unsigned char) op)) */
@@ -2308,11 +2308,10 @@ crypt_entry_fmt (char *dest, ssize_t destlen, char op,
     *dest = '\0';
   }
 
-  if (optional)
-    m_strformat (dest, destlen, ifstring, mutt_attach_fmt, data, 0);
-  else if (flags & M_FORMAT_OPTIONAL)
-    m_strformat (dest, destlen, elsestring, mutt_attach_fmt, data, 0);
-  return (src);
+  if (flags & M_FORMAT_OPTIONAL)
+    m_strformat(dest, destlen, 0, optional ? ifstr: elstr,
+                mutt_attach_fmt, data, 0);
+  return src;
 }
 
 /* Used by the display fucntion to format a line. */
@@ -2324,8 +2323,7 @@ static void crypt_entry (char *s, ssize_t l, MUTTMENU * menu, int num)
   entry.key = key_table[num];
   entry.num = num + 1;
 
-  m_strformat(s, l, NONULL (PgpEntryFormat), crypt_entry_fmt,
-              (unsigned long) &entry,
+  m_strformat(s, l, COLS - SW, PgpEntryFormat, crypt_entry_fmt, &entry,
               option(OPTARROWCURSOR) ? M_FORMAT_ARROWCURSOR : 0);
 }