]> diplodocus.org Git - nmh/blobdiff - sbr/folder_read.c
new.c: Order two return statements to match comment.
[nmh] / sbr / folder_read.c
index e4bac9045e38e01015ad2a045f4c425a12045a53..4edd8db6df9afce125526242c98bf66a8cf886fa 100644 (file)
@@ -1,6 +1,4 @@
-
-/*
- * folder_read.c -- initialize folder structure and read folder
+/* folder_read.c -- initialize folder structure and read folder
  *
  * This code is Copyright (c) 2002, by the authors of nmh.  See the
  * COPYRIGHT file in the root directory of the nmh distribution for
@@ -9,6 +7,7 @@
 
 #include <h/mh.h>
 #include <h/utils.h>
+#include "m_maildir.h"
 
 /* We allocate the `mi' array 1024 elements at a time */
 #define        NUMMSGS  1024
 struct msgs *
 folder_read (char *name, int lockflag)
 {
-    int msgnum, prefix_len, len, *mi;
+    int msgnum, len, *mi;
     struct msgs *mp;
     struct dirent *dp;
     DIR *dd;
-    bvector_t *v;
+    struct bvector *v;
     size_t i;
 
     name = m_mailpath (name);
@@ -54,7 +53,6 @@ folder_read (char *name, int lockflag)
 
     if (access (name, W_OK) == -1)
        set_readonly (mp);
-    prefix_len = strlen(BACKUP_PREFIX);
 
     /*
      * Allocate a temporary place to record the
@@ -100,7 +98,7 @@ folder_read (char *name, int lockflag)
 
                default: 
                    /* skip any files beginning with backup prefix */
-                   if (!strncmp (dp->d_name, BACKUP_PREFIX, prefix_len))
+                   if (has_prefix(dp->d_name, BACKUP_PREFIX))
                        continue;
 
                    /* skip the LINK file */
@@ -139,18 +137,11 @@ folder_read (char *name, int lockflag)
     mp->num_msgstats = MSGSTATNUM (mp->lowoff, mp->hghoff);
     mp->msgstats = mh_xmalloc (MSGSTATSIZE(mp));
     for (i = 0, v = mp->msgstats; i < mp->num_msgstats; ++i, ++v) {
-       *v = bvector_create (0);
+        bvector_init(v);
     }
 
     mp->msgattrs = svector_create (0);
 
-    /*
-     * Clear all the flag bits for all the message
-     * status entries we just allocated.
-     */
-    for (msgnum = mp->lowoff; msgnum <= mp->hghoff; msgnum++)
-       clear_msg_flags (mp, msgnum);
-
     /*
      * Scan through the array of messages we've seen and
      * setup the initial flags for those messages in the