* wl-draft.el (wl-draft-do-fcc): No cache save.
[elisp/wanderlust.git] / wl / wl.el
index 1cc8a26..209e08f 100644 (file)
--- a/wl/wl.el
+++ b/wl/wl.el
       (progn
        ;; flush queue!!
        (elmo-dop-queue-flush)
-       (unless queue-flush-only (wl-biff-start))
+       (unless queue-flush-only
+         (when wl-biff-check-folder-list
+           (wl-biff-check-folders)
+           (wl-biff-start)))
        (if (and wl-draft-enable-queuing
                 wl-auto-flush-queue)
            (wl-draft-queue-flush))
@@ -626,20 +629,30 @@ Entering Plugged mode calls the value of `wl-plugged-mode-hook'."
 
 ;;; end of wl-plugged-mode
 
-(defun wl-save (&optional exec-marks)
+(defun wl-save ()
   "Save summary and folder status."
-  (interactive "P")
-  (wl-save-status 'keep-summary (not exec-marks))
+  (interactive)
+  (wl-save-status 'keep-summary)
   (run-hooks 'wl-save-hook))
 
-(defun wl-save-status (&optional keep-summary leave-marks)
+(defun wl-execute-temp-marks ()
+  "Execute temporary marks in summary buffers."
+  (interactive)
+  (let ((summaries (wl-collect-summary)))
+    (while summaries
+      (with-current-buffer (car summaries)
+       (wl-summary-exec-with-confirmation)
+       (wl-summary-save-status))
+      (setq summaries (cdr summaries)))))
+
+(defun wl-save-status (&optional keep-summary)
   (message "Saving summary and folder status...")
   (save-excursion
     (let ((summaries (wl-collect-summary)))
       (while summaries
        (with-current-buffer (car summaries)
-         (unless leave-marks
-           (wl-summary-cleanup-temp-marks keep-summary))
+         (unless keep-summary
+           (wl-summary-cleanup-temp-marks))
          (wl-summary-save-view)
          (elmo-folder-commit wl-summary-buffer-elmo-folder)
          (unless keep-summary
@@ -659,6 +672,7 @@ Entering Plugged mode calls the value of `wl-plugged-mode-hook'."
     (elmo-quit)
     (when wl-use-acap (funcall (symbol-function 'wl-acap-exit)))
     (wl-biff-stop)
+    (elmo-passwd-alist-clear)
     (run-hooks 'wl-exit-hook)
     (wl-save-status)
     (wl-folder-cleanup-variables)
@@ -821,13 +835,15 @@ If ARG (prefix argument) is specified, folder checkings are skipped."
          (unless arg
            (run-hooks 'wl-auto-check-folder-pre-hook)
            (wl-folder-auto-check)
-           (run-hooks 'wl-auto-check-folder-hook))
-         (unless arg (wl-biff-start)))
+           (run-hooks 'wl-auto-check-folder-hook)))
       (error
        (if (buffer-live-p demo-buf)
           (kill-buffer demo-buf))
        (signal (car obj)(cdr obj)))
       (quit))
+    (when wl-biff-check-folder-list
+      (unless arg (wl-biff-check-folders))
+      (wl-biff-start))
     (if (buffer-live-p demo-buf)
        (kill-buffer demo-buf)))
   (run-hooks 'wl-hook))