also synch seen status when initializing FileBasedMailbox
authoradam <adam@megacz.com>
Sat, 23 Oct 2004 22:30:18 +0000 (22:30 +0000)
committeradam <adam@megacz.com>
Sat, 23 Oct 2004 22:30:18 +0000 (22:30 +0000)
darcs-hash:20041023223018-5007d-bc7911be54a0d0f015e259086674a5080e6e48a6.gz

src/org/ibex/mail/target/FileBasedMailbox.java

index bf5d370..466f93f 100644 (file)
@@ -67,8 +67,11 @@ public class FileBasedMailbox extends Mailbox.Default {
             }
             for(Transaction t : kill) prevayler.execute(t);
             for(String file : new File(dir.getParent()).list())
-                if (file.charAt(0)!='.' && !(new File(dir.getParent() + slash + file).isDirectory()))
+                if (file.charAt(0)!='.' && !(new File(dir.getParent() + slash + file).isDirectory())) {
                     if (get(file) == null) new Entry(this, prevayler, file);
+                } else if ((new File(dir.getParent() + slash + file).lastModified() == MAGIC_DATE) != get(file).seen()) {
+                    prevayler.execute(new Seen(get(file).uid(), !get(file).seen()));
+                }
             Log.info(this, "  done initializing maildir " + dir.getParent());
             new Thread() { public void run() {
                 try { prevayler.takeSnapshot(); } catch (Exception e) { Log.error(this, e); }