commit 7a4a887b3c27dff3d9d219656a57ae1aed773c80
Author: Oswald Buddenhagen <o...@users.sf.net>
Date:   Wed Dec 22 20:13:53 2021 +0100

    sort lists of trashed messages after journal replay
    
    the messages are trashed in mailbox (and thus UID) order, and in
    practice we expect the operations to complete in order. however, if
    older messages need to be trashed after a journal replay, and we get
    interrupted again, the next replay would produce an unsorted array,
    and thus break the binary search.
    
    amends 2bba9b9.

 src/sync.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/sync.c b/src/sync.c
index db6b72c2..afbca489 100644
--- a/src/sync.c
+++ b/src/sync.c
@@ -1127,6 +1127,8 @@ load_state( sync_vars_t *svars )
                        }
                }
                fclose( jfp );
+               sort_uint_array( svars->trashed_msgs[F].array );
+               sort_uint_array( svars->trashed_msgs[N].array );
        } else {
                if (errno != ENOENT) {
                        sys_error( "Error: cannot read journal %s", 
svars->jname );


_______________________________________________
isync-devel mailing list
isync-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/isync-devel

Reply via email to