]> granicus.if.org Git - mutt/commitdiff
Create mutt_buffer_buffy() buffer function.
authorKevin McCarthy <kevin@8t8.us>
Sun, 7 Apr 2019 23:02:02 +0000 (16:02 -0700)
committerKevin McCarthy <kevin@8t8.us>
Sun, 7 Apr 2019 23:02:02 +0000 (16:02 -0700)
Relocate some of the buffy function declarations to buffy.h while
adding the new declaration.

buffy.c
buffy.h
enter.c
protos.h

diff --git a/buffy.c b/buffy.c
index 849d25ee8f047e3c810954928103c2063b351337..d413abf5339965aab7e8be1063c575dfb288eae9 100644 (file)
--- a/buffy.c
+++ b/buffy.c
@@ -726,18 +726,31 @@ int mutt_buffy_notify (void)
   return (0);
 }
 
+void mutt_buffy (char *s, size_t slen)
+{
+  BUFFER *s_buf;
+
+  s_buf = mutt_buffer_pool_get ();
+
+  mutt_buffer_addstr (s_buf, NONULL (s));
+  mutt_buffer_buffy (s_buf);
+  strfcpy (s, mutt_b2s (s_buf), slen);
+
+  mutt_buffer_pool_release (&s_buf);
+}
+
 /*
  * mutt_buffy() -- incoming folders completion routine
  *
  * given a folder name, this routine gives the next incoming folder with new
  * mail.
  */
-void mutt_buffy (char *s, size_t slen)
+void mutt_buffer_buffy (BUFFER *s)
 {
   BUFFY *tmp = Incoming;
   int pass, found = 0;
 
-  mutt_expand_path (s, slen);
+  mutt_buffer_expand_path (s);
 
   if (mutt_buffy_check (0))
   {
@@ -747,11 +760,11 @@ void mutt_buffy (char *s, size_t slen)
        mutt_expand_path (tmp->path, sizeof (tmp->path));
        if ((found || pass) && tmp->new)
        {
-         strfcpy (s, tmp->path, slen);
-         mutt_pretty_mailbox (s, slen);
+         mutt_buffer_strcpy (s, tmp->path);
+         mutt_buffer_pretty_mailbox (s);
          return;
        }
-       if (mutt_strcmp (s, tmp->path) == 0)
+       if (mutt_strcmp (mutt_b2s (s), tmp->path) == 0)
          found = 1;
       }
 
@@ -760,7 +773,7 @@ void mutt_buffy (char *s, size_t slen)
   }
 
   /* no folders with new mail */
-  *s = '\0';
+  mutt_buffer_clear (s);
 }
 
 /* fetch buffy object for given path, if present */
diff --git a/buffy.h b/buffy.h
index 18be9de93d3103abcc3a47410f3c8780a3e2a3de..89091c9c6f5d694eb87d8a4fe1a6d0ad4c4b54fe 100644 (file)
--- a/buffy.h
+++ b/buffy.h
@@ -51,6 +51,13 @@ WHERE short BuffyCheckStatsInterval INITVAL (60);
 
 extern time_t BuffyDoneTime;   /* last time we knew for sure how much mail there was */
 
+void mutt_buffer_buffy (BUFFER *);
+void mutt_buffy (char *, size_t);
+
+int  mutt_buffy_list (void);
+int mutt_buffy_check (int);
+int mutt_buffy_notify (void);
+
 BUFFY *mutt_find_mailbox (const char *path);
 void mutt_update_mailbox (BUFFY * b);
 
diff --git a/enter.c b/enter.c
index ecdb71edac15d821eca497dd0dd1443181b0b9e0..ccfdb4c7219baeeb01f660510628c0ce2d32dd32 100644 (file)
--- a/enter.c
+++ b/enter.c
@@ -26,6 +26,7 @@
 #include "mutt_curses.h"
 #include "keymap.h"
 #include "history.h"
+#include "buffy.h"
 
 #include <string.h>
 
index 74af0c6adc98e0efc708a06ed33ab732266b0ac5..eefc27ca0fe1baacbf2156ac2de16443693c8e48 100644 (file)
--- a/protos.h
+++ b/protos.h
@@ -173,8 +173,6 @@ int  mutt_bounce_message (FILE *fp, HEADER *, ADDRESS *);
 void mutt_break_thread (HEADER *);
 void mutt_browser_cleanup (void);
 void mutt_buffer_concat_path (BUFFER *, const char *, const char *);
-void mutt_buffy (char *, size_t);
-int  mutt_buffy_list (void);
 void mutt_canonical_charset (char *, size_t, const char *);
 void mutt_check_stats(void);
 int mutt_count_body_parts (CONTEXT *, HEADER *);
@@ -295,8 +293,6 @@ void mutt_alias_delete_reverse (ALIAS *t);
 int mutt_alloc_color (int fg, int bg);
 int mutt_any_key_to_continue (const char *);
 char *mutt_apply_replace (char *, size_t, char *, REPLACE_LIST *);
-int mutt_buffy_check (int);
-int mutt_buffy_notify (void);
 int mutt_builtin_editor (const char *, HEADER *, HEADER *);
 int mutt_can_decode (BODY *);
 int mutt_change_flag (HEADER *, int);