* nnimap.el (nnimap-open-server): Re-open server if it isn't in
authorSimon Josefsson <jas@extundo.com>
Thu, 10 Oct 2002 02:40:50 +0000 (02:40 +0000)
committerSimon Josefsson <jas@extundo.com>
Thu, 10 Oct 2002 02:40:50 +0000 (02:40 +0000)
auth, selected or examine state.

lisp/ChangeLog
lisp/nnimap.el

index ce73070..d4f7498 100644 (file)
@@ -1,5 +1,8 @@
 2002-10-10  Simon Josefsson  <jas@extundo.com>
 
+       * nnimap.el (nnimap-open-server): Re-open server if it isn't in
+       auth, selected or examine state.
+
        * pgg-gpg.el (pgg-gpg-verify-region): Filter out stuff into output
        buffer and error buffer depending on type of information.
 
index 81e150e..57b8b6d 100644 (file)
@@ -734,7 +734,11 @@ If EXAMINE is non-nil the group is selected read-only."
     (with-current-buffer (get-buffer-create nnimap-server-buffer)
       (nnoo-change-server 'nnimap server defs))
     (or (and nnimap-server-buffer
-            (imap-opened nnimap-server-buffer))
+            (imap-opened nnimap-server-buffer)
+            (if (memq imap-state '(auth select examine))
+                t
+              (imap-close nnimap-server-buffer)
+              (nnimap-open-connection server)))
        (nnimap-open-connection server))))
 
 (deffoo nnimap-server-opened (&optional server)