From: Julien Danjou Date: Fri, 17 Nov 2006 15:44:40 +0000 (+0100) Subject: Fix a bug when changing folder X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=commitdiff_plain;h=e6c3d6c782080832a49192a8bd88599ef230678e Fix a bug when changing folder If we press 'c' it prompts for local mailbox if no other mailboxes have new mail. It should return null instead, like mutt does. Signed-off-by: Julien Danjou Signed-off-by: Pierre Habouzit --- diff --git a/buffy.c b/buffy.c index 0db6026..dfadbe8 100644 --- a/buffy.c +++ b/buffy.c @@ -152,7 +152,7 @@ void buffy_update_mailbox (BUFFY * b) #endif /* func to free buffy for list_del() */ -static void buffy_free (BUFFY** p) { +static inline void buffy_free (BUFFY** p) { p_delete(&(*p)->path); p_delete(p); } @@ -486,7 +486,7 @@ int buffy_list (void) pos += m_strlen(strncat (buffylist, _("New mail in "), sizeof (buffylist) - 1 - pos)); /* __STRNCAT_CHECKED__ */ if (Incoming) { for (i = 0; i < Incoming->length; i++) { - tmp = (BUFFY*) Incoming->data[i]; + tmp = Incoming->data[i]; /* Is there new mail in this mailbox? */ if (tmp->new <= 0 || (have_unnotified && tmp->notified)) continue; @@ -500,12 +500,9 @@ int buffy_list (void) if (!first) pos += m_strlen(strncat (buffylist + pos, ", ", sizeof (buffylist) - 1 - pos)); /* __STRNCAT_CHECKED__ */ - /* Prepend an asterisk to mailboxes not already notified */ - if (!tmp->notified) { - /* pos += m_strlen(strncat(buffylist + pos, "*", sizeof(buffylist)-1-pos)); __STRNCAT_CHECKED__ */ - tmp->notified = 1; - BuffyNotify--; - } + tmp->notified = 1; + BuffyNotify--; + pos += m_strlen(strncat (buffylist + pos, path, sizeof (buffylist) - 1 - pos)); /* __STRNCAT_CHECKED__ */ first = 0; } @@ -535,7 +532,7 @@ int buffy_notify (void) } /* - * mutt_buffy() -- incoming folders completion routine + * buffy_next() -- incoming folders completion routine * * given a folder name, this routine gives the next incoming folder with new * new mail. @@ -545,14 +542,11 @@ void buffy_next (char *s, size_t slen) int l = 0; int c = 0, i = 0; - if (list_empty(Incoming)) - return; - mutt_expand_path (s, _POSIX_PATH_MAX); - if (buffy_check (0) == 0) { - *s = '\0'; - return; - } + if (!buffy_check (0)) { + *s = '\0'; + return; + } /* * If buffy_lookup returns the index,