commit 8bd6eb433f895418a073b021d40bf5d64bd2463c
Author: Oswald Buddenhagen <o...@users.sf.net>
Date:   Sun Sep 6 22:56:38 2015 +0200

    don't attempt to issue LOGOUT on bad stores
    
    amends 9d22641b.

 src/drv_imap.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/drv_imap.c b/src/drv_imap.c
index 86dd22c..663dbef 100644
--- a/src/drv_imap.c
+++ b/src/drv_imap.c
@@ -1501,8 +1501,12 @@ imap_cleanup( void )
        for (ctx = unowned; ctx; ctx = nctx) {
                nctx = ctx->next;
                set_bad_callback( ctx, (void (*)(void *))imap_cancel_store, ctx 
);
-               ((imap_store_t *)ctx)->expectBYE = 1;
-               imap_exec( (imap_store_t *)ctx, 0, imap_cleanup_p2, "LOGOUT" );
+               if (((imap_store_t *)ctx)->state != SST_BAD) {
+                       ((imap_store_t *)ctx)->expectBYE = 1;
+                       imap_exec( (imap_store_t *)ctx, 0, imap_cleanup_p2, 
"LOGOUT" );
+               } else {
+                       imap_cancel_store( ctx );
+               }
        }
 }
 

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

Reply via email to