+2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
+
+       * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
+       (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
+
 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
 
        * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
 
        (case cur-status
         ((read important answered))
         (t (elmo-msgdb-set-mark msgdb number
-                                (if (and use-cache cur-cached)
-                                    (elmo-msgdb-set-mark
-                                     msgdb number
-                                     elmo-msgdb-read-uncached-mark)))
+                                (if (and use-cache (not cur-cached))
+                                    elmo-msgdb-read-uncached-mark))
            (setq mark-modified t))))
       (important
        (unless (eq cur-status 'important)
 (defsubst elmo-msgdb-uncached-marks ()
   (or elmo-msgdb-uncached-marks-internal
       (setq elmo-msgdb-uncached-marks-internal
-           (list elmo-msgdb-answered-uncached-mark
+           (list elmo-msgdb-new-mark
+                 elmo-msgdb-answered-uncached-mark
                  elmo-msgdb-unread-uncached-mark
                  elmo-msgdb-read-uncached-mark))))