"cache/"
(file-name-nondirectory f))))
(directory-files (elmo-cache-folder-directory-internal folder)
- t "^[0-9A-F][0-9A-F]$"))))
+ t "^[01][0-9A-F]$"))))
(luna-define-method elmo-folder-message-file-p ((folder elmo-cache-folder))
t)
new-msgdb))
(luna-define-method elmo-folder-append-buffer ((folder elmo-cache-folder)
- &optional flag number)
+ &optional flags number)
;; dir-name is changed according to msgid.
(unless (elmo-cache-folder-dir-name-internal folder)
- (let* ((file (elmo-file-cache-get-path (std11-field-body "message-id")))
- (dir (directory-file-name (file-name-directory file))))
- (unless (file-exists-p dir)
- (elmo-make-directory dir))
- (when (file-writable-p file)
- (write-region-as-binary
- (point-min) (point-max) file nil 'no-msg))))
- t)
+ (let ((msgid (std11-field-body "message-id"))
+ file dir)
+ (when msgid
+ (setq file (elmo-file-cache-get-path msgid))
+ (setq dir (directory-file-name (file-name-directory file)))
+ (unless (file-exists-p dir)
+ (elmo-make-directory dir))
+ (when (and (file-writable-p file)
+ (not (file-exists-p file)))
+ (write-region-as-binary
+ (point-min) (point-max) file nil 'no-msg)
+ t)))))
(luna-define-method elmo-map-folder-delete-messages ((folder elmo-cache-folder)
locations)