mutt stable branch with some hacks
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix some issues with ungroup [...] *

+25 -19
+11
ChangeLog
··· 1 + 2009-07-27 21:14 -0700 Kees Cook <kees@outflux.net> (2fc9348684fe) 2 + 3 + * mh.c: Properly propagate mh_read_sequences result. Closes #3308. 4 + 5 + 2009-07-27 20:49 -0700 Brendan Cully <brendan@kublai.com> (5c076ed18883) 6 + 7 + * configure.ac: Do not overwrite docdir unless --with- 8 + docdir was explicitly given. This allows --docdir from autoconf 9 + 2.60+ to work, though if given --with-docdir will silently override 10 + --docdir. Closes #3282. 11 + 1 12 2009-07-24 14:30 +0200 Rocco Rutte <pdmef@gmx.net> (86e066a206ac) 2 13 3 14 * po/de.po: Update German translation
+11 -17
group.c
··· 53 53 return p; 54 54 } 55 55 56 - static void group_free (void *p) 56 + static void mutt_group_remove (group_t *g) 57 57 { 58 - group_t *g = (group_t *)p; 59 - 60 58 if (!g) 61 59 return; 62 - FREE(&g->name); 60 + hash_delete (Groups, g->name, g, NULL); 63 61 rfc822_free_address (&g->as); 64 62 mutt_free_rx_list (&g->rs); 63 + FREE(&g->name); 65 64 FREE(&g); 66 65 } 67 66 68 - int mutt_group_remove (group_t * g, BUFFER * err) 67 + int mutt_group_context_clear (group_context_t **ctx) 69 68 { 70 - int h; 71 - 72 - if (!g) 73 - return -1; 74 - h = Groups->hash_string ((const unsigned char *)g->name, Groups->nelem); 75 - if (!hash_find_hash (Groups, h, g->name)) 69 + group_context_t *t; 70 + for ( ; ctx && *ctx; (*ctx) = t) 76 71 { 77 - if (err) 78 - snprintf (err->data, err->dsize, _("No such group: %s"), g->name); 79 - return -1; 72 + mutt_group_remove ((*ctx)->g); 73 + t = (*ctx)->next; 74 + FREE(ctx); /* __FREE_CHECKED__ */ 80 75 } 81 - hash_delete_hash (Groups, h, g->name, g, group_free); 82 76 return 0; 83 77 } 84 78 ··· 167 161 { 168 162 rv = mutt_group_remove_adrlist (ctx->g, a); 169 163 if (empty_group (ctx->g)) 170 - mutt_group_remove (ctx->g, NULL); 164 + mutt_group_remove (ctx->g); 171 165 } 172 166 173 167 return rv; ··· 191 185 { 192 186 rv = mutt_group_remove_rx (ctx->g, s); 193 187 if (empty_group (ctx->g)) 194 - mutt_group_remove (ctx->g, NULL); 188 + mutt_group_remove (ctx->g); 195 189 } 196 190 197 191 return rv;
+1 -1
group.h
··· 32 32 33 33 int mutt_group_match (group_t *g, const char *s); 34 34 35 - int mutt_group_remove (group_t *, BUFFER *); 35 + int mutt_group_context_clear (group_context_t **ctx); 36 36 int mutt_group_context_remove_rx (group_context_t *ctx, const char *s); 37 37 int mutt_group_context_remove_adrlist (group_context_t *ctx, ADDRESS *); 38 38
+1 -1
init.c
··· 843 843 844 844 if (data == M_UNGROUP && !mutt_strcasecmp (buf->data, "*")) 845 845 { 846 - if (mutt_group_remove (gc->g, err) < 0) 846 + if (mutt_group_context_clear (&gc) < 0) 847 847 goto bail; 848 848 goto out; 849 849 }
+1
rfc822.c
··· 89 89 #ifdef EXACT_ADDRESS 90 90 FREE(&a->val); 91 91 #endif 92 + FREE(&a); 92 93 } 93 94 94 95 int rfc822_remove_from_adrlist (ADDRESS **a, const char *mailbox)