From b46e57324394dd1ca106d210463190ae80f743c8 Mon Sep 17 00:00:00 2001 From: Koni Marti Date: Mon, 7 Nov 2022 22:17:11 +0100 Subject: store: fix server-side threads toggling Fix server-side threads toggling that can sometimes cause the uids to be out-of-sync with the threads. This patch ensures a consistent way of handling the uids and threads in the store. Fixes: https://todo.sr.ht/~rjarry/aerc/102 Signed-off-by: Koni Marti Tested-by: Inwit Acked-by: Robin Jarry --- lib/msgstore.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'lib/msgstore.go') diff --git a/lib/msgstore.go b/lib/msgstore.go index 4a68f808..31f6da28 100644 --- a/lib/msgstore.go +++ b/lib/msgstore.go @@ -236,9 +236,8 @@ func (store *MessageStore) Update(msg types.WorkerMessage) { case *types.DirectoryThreaded: newMap := make(map[uint32]*models.MessageInfo) - builder := NewThreadBuilder(store.iterFactory) - builder.RebuildUids(msg.Threads, store.reverseThreadOrder) - store.uids = builder.Uids() + store.builder = NewThreadBuilder(store.iterFactory) + store.builder.RebuildUids(msg.Threads, store.reverseThreadOrder) store.threads = msg.Threads for _, uid := range store.uids { -- cgit