* elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
[elisp/wanderlust.git] / elmo / elmo-pipe.el
index b387a9f..63aabf7 100644 (file)
 
 (defun elmo-pipe-drain (src dst &optional copy ignore-list)
   "Move or copy all messages of SRC to DST."
-  (let ((elmo-inhibit-number-mapping (not copy)) ; No need to use UIDL
+  (let ((elmo-inhibit-number-mapping (and (eq (elmo-folder-type-internal
+                                              src) 'pop3)
+                                         (not copy))) ; No need to use UIDL
        msgs len)
     (message "Checking %s..." (elmo-folder-name-internal src))
     ;; Warnnig: some function requires msgdb
                             "Copying messages..."
                           "Moving messages...")))
     (unwind-protect
-       (elmo-folder-move-messages src msgs dst
-                                  nil nil copy)
+       (elmo-folder-move-messages src msgs dst copy)
       (elmo-progress-clear 'elmo-folder-move-messages))
     (when (and copy msgs)
       (setq ignore-list (elmo-number-set-append-list ignore-list
 (luna-define-method elmo-message-mark ((folder elmo-pipe-folder) number)
   (elmo-message-mark (elmo-pipe-folder-dst-internal folder) number))
 
+(luna-define-method elmo-message-flags ((folder elmo-pipe-folder) number)
+  (elmo-message-flags (elmo-pipe-folder-dst-internal folder) number))
+
 (luna-define-method elmo-message-field ((folder elmo-pipe-folder)
                                        number field)
   (elmo-message-field (elmo-pipe-folder-dst-internal folder)