From: Richard Russon Date: Thu, 22 Nov 2018 12:27:40 +0000 (+0000) Subject: factor out Context from mutt_messages_in_thread() X-Git-Tag: 2019-10-25~500^2~14 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d44eb7ebd31d1761b27379c50648315340c491fc;p=neomutt factor out Context from mutt_messages_in_thread() --- diff --git a/hdrline.c b/hdrline.c index 1482e6135..4531a28b8 100644 --- a/hdrline.c +++ b/hdrline.c @@ -828,16 +828,16 @@ static const char *index_format_str(char *buf, size_t buflen, size_t col, int co case 'e': snprintf(fmt, sizeof(fmt), "%%%sd", prec); - snprintf(buf, buflen, fmt, mutt_messages_in_thread(ctx, e, 1)); + snprintf(buf, buflen, fmt, mutt_messages_in_thread(ctx->mailbox, e, 1)); break; case 'E': if (!optional) { snprintf(fmt, sizeof(fmt), "%%%sd", prec); - snprintf(buf, buflen, fmt, mutt_messages_in_thread(ctx, e, 0)); + snprintf(buf, buflen, fmt, mutt_messages_in_thread(ctx->mailbox, e, 0)); } - else if (mutt_messages_in_thread(ctx, e, 0) <= 1) + else if (mutt_messages_in_thread(ctx->mailbox, e, 0) <= 1) optional = 0; break; diff --git a/index.c b/index.c index 1c1e089a9..bae14396c 100644 --- a/index.c +++ b/index.c @@ -1491,7 +1491,7 @@ int mutt_index_menu(void) { struct Email *e = Context->mailbox->hdrs[i - 1]; - if (mutt_messages_in_thread(Context, e, 1) > 1) + if (mutt_messages_in_thread(Context->mailbox, e, 1) > 1) { mutt_uncollapse_thread(Context, e); mutt_set_virtual(Context); diff --git a/mutt_thread.c b/mutt_thread.c index 7be6e2110..13c017bb7 100644 --- a/mutt_thread.c +++ b/mutt_thread.c @@ -1380,21 +1380,19 @@ int mutt_traverse_thread(struct Context *ctx, struct Email *cur, int flag) /** * mutt_messages_in_thread - Count the messages in a thread - * @param ctx Mailbox - * @param e Email + * @param m Mailbox + * @param e Email * @param flag Flag, see notes below * @retval num Number of message / Our position * * If flag is 0, we want to know how many messages are in the thread. * If flag is 1, we want to know our position in the thread. */ -int mutt_messages_in_thread(struct Context *ctx, struct Email *e, int flag) +int mutt_messages_in_thread(struct Mailbox *m, struct Email *e, int flag) { - if (!ctx || !ctx->mailbox || !e) + if (!m || !e) return 1; - struct Mailbox *m = ctx->mailbox; - struct MuttThread *threads[2]; int rc; diff --git a/mutt_thread.h b/mutt_thread.h index 5590c5e12..2cf9bedfd 100644 --- a/mutt_thread.h +++ b/mutt_thread.h @@ -64,7 +64,7 @@ int mutt_traverse_thread(struct Context *ctx, struct Email *cur, int flag); #define mutt_thread_next_unread(x, y) mutt_traverse_thread(x, y, MUTT_THREAD_NEXT_UNREAD) bool mutt_link_threads(struct Email *cur, struct Email *last, struct Context *ctx); -int mutt_messages_in_thread(struct Context *ctx, struct Email *e, int flag); +int mutt_messages_in_thread(struct Mailbox *m, struct Email *e, int flag); void mutt_draw_tree(struct Context *ctx); void mutt_clear_threads(struct Context *ctx);