X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Ffolder_read.c;h=35dc1950a4f7dde864da0ea93c444cc27cf5f639;hp=c28b430182f711ceec9103c573ec38fa0b2b00fc;hb=30292c537fe4eab052f303f1d3179c0e2fd037d8;hpb=d39e2c447b0d163a5a63f480b23d06edb7a73aa0 diff --git a/sbr/folder_read.c b/sbr/folder_read.c index c28b430..35dc195 100644 --- a/sbr/folder_read.c +++ b/sbr/folder_read.c @@ -38,6 +38,7 @@ folder_read(char *name) if (stat(name, &st) == -1) { free(name); + closedir(dd); return NULL; } @@ -99,31 +100,25 @@ folder_read(char *name) } else { switch (dp->d_name[0]) { - case '.': - case ',': -#ifdef MHE - case '+': -#endif /* MHE */ - continue; + case '.': + case ',': + continue; - default: - /* - ** skip any files beginning with - ** backup prefix - */ - if (!strncmp(dp->d_name, backup_prefix, prefix_len)) - continue; - - /* skip the altmsg link file */ - if (!strcmp(dp->d_name, altmsglink)) - continue; - - /* - ** indicate that there are other - ** files in folder - */ - set_other_files(mp); + default: + /* + ** skip any files beginning with + ** backup prefix + */ + if (strncmp(dp->d_name, backup_prefix, + prefix_len)==0) continue; + + /* + ** indicate that there are other + ** files in folder + */ + set_other_files(mp); + continue; } } } @@ -137,14 +132,14 @@ folder_read(char *name) /* for testing, allocate minimal necessary space */ /* mp->hghoff = max(mp->hghmsg, 1); */ - /* - ** Allocate space for status of each message. - */ + /* Allocate space for status of each message. */ + mp->msgstats = mh_xmalloc(MSGSTATSIZE(mp, mp->lowoff, mp->hghoff)); /* ** Clear all the flag bits for all the message ** status entries we just allocated. + ** TODO: use memset() ? */ for (msgnum = mp->lowoff; msgnum <= mp->hghoff; msgnum++) clear_msg_flags(mp, msgnum);