From: Thomas Roessler Date: Fri, 3 Sep 1999 18:16:59 +0000 (+0000) Subject: - If the name of the folder returned by an IMAP server is empty, Mutt X-Git-Tag: mutt-0-96-7-rel~21 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c41a1586c453d446d3b38aacb961015621a2caf6;p=mutt - If the name of the folder returned by an IMAP server is empty, Mutt could segfault in the browser window attempting to display it. - add_folder in browser.c looks like it got corrupted in some CVS update. A small patch makes things work again for examine_mailboxes. (From: Brendan Cully ) --- diff --git a/browser.c b/browser.c index d170770d..f08f99ea 100644 --- a/browser.c +++ b/browser.c @@ -170,7 +170,7 @@ folder_format_str (char *dest, size_t destlen, char op, const char *src, case 'f': #ifdef USE_IMAP if (mx_is_imap (folder->ff->name)) - strfcpy (fn, folder->ff->desc, sizeof (fn)); + strfcpy (fn, NONULL(folder->ff->desc), sizeof (fn)); else #endif strfcpy (fn, folder->ff->name, sizeof(fn)); @@ -302,8 +302,6 @@ folder_format_str (char *dest, size_t destlen, char op, const char *src, static void add_folder (MUTTMENU *m, struct browser_state *state, const char *name, const struct stat *s, int new) { - char buffer[_POSIX_PATH_MAX + SHORT_STRING]; - if (state->entrylen == state->entrymax) { /* need to allocate more space */ @@ -325,7 +323,7 @@ static void add_folder (MUTTMENU *m, struct browser_state *state, (state->entry)[state->entrylen].is_new = new; (state->entry)[state->entrylen].name = safe_strdup (name); - (state->entry)[state->entrylen].desc = safe_strdup (buffer); + (state->entry)[state->entrylen].desc = safe_strdup (name); #ifdef USE_IMAP (state->entry)[state->entrylen].notfolder = 0; #endif