* elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
[elisp/wanderlust.git] / elmo / elmo-dop.el
index 586c165..abf1bce 100644 (file)
@@ -65,8 +65,8 @@ Automatically loaded/saved.")
 (defvar elmo-dop-queue-method-name-alist
   '((elmo-folder-append-buffer-dop-delayed . "Append")
     (elmo-folder-delete-messages-dop-delayed . "Delete")
-    (elmo-message-encache-dop . "Encache")
-    (elmo-create-folder-dop . "Create")
+    (elmo-message-encache . "Encache")
+    (elmo-create-folder . "Create")
     (elmo-folder-mark-as-read . "Read")
     (elmo-folder-unmark-read . "Unread")
     (elmo-folder-mark-as-important . "Important")
@@ -210,8 +210,8 @@ FOLDER is the folder structure."
                           numbers)))
   t)
 
-(defsubst elmo-message-encache-dop (folder number)
-  (elmo-dop-queue-append folder 'elmo-message-encache (list number)))
+(defsubst elmo-message-encache-dop (folder number &optional read)
+  (elmo-dop-queue-append folder 'elmo-message-encache (list number read)))
 
 (defsubst elmo-create-folder-dop (folder)
   (elmo-dop-queue-append folder 'elmo-folder-create nil))
@@ -247,7 +247,7 @@ FOLDER is the folder structure."
 ;;; Delayed operation (executed at online status).
 (defun elmo-folder-append-buffer-dop-delayed (folder unread number set-number)
   (let ((spool-folder (elmo-dop-spool-folder folder))
-       failure)
+       failure saved)
     (with-temp-buffer
       (elmo-message-fetch spool-folder number
                          (elmo-make-fetch-strategy 'entire)
@@ -258,9 +258,12 @@ FOLDER is the folder structure."
        (error (setq failure t)))
       (when failure
        ;; Append failed...
-       (elmo-folder-append-buffer (elmo-make-folder elmo-lost+found-folder)
-                                  unread set-number))
-      (elmo-folder-delete-messages spool-folder (list number))
+       (setq saved (elmo-folder-append-buffer
+                    (elmo-make-folder elmo-lost+found-folder)
+                    unread set-number)))
+      (if (or (not failure)
+             saved)
+         (elmo-folder-delete-messages spool-folder (list number)))
       t)))
 
 (defun elmo-folder-delete-messages-dop-delayed (folder number-alist)