rc = 1;
break;
}
-@@ -337,6 +343,33 @@
+@@ -337,6 +343,34 @@
closedir (dirp);
+ if ((dirp = opendir (path)) == NULL)
+ {
+ mailbox->magic = 0;
-+ break;
+ }
+ while ((de = readdir (dirp)) != NULL)
+ {
+ mailbox->msgcount++;
+ }
+ }
++
++ closedir (dirp);
+
return rc;
}
-@@ -351,8 +384,26 @@
+@@ -345,14 +379,33 @@
+ {
+ int rc = 0;
+ int statcheck;
++ CONTEXT *ctx;
+
+ if (option (OPTCHECKMBOXSIZE))
+ statcheck = sb->st_size > mailbox->size;
else
statcheck = sb->st_mtime > sb->st_atime
|| (mailbox->newly_created && sb->st_ctime == sb->st_mtime && sb->st_ctime == sb->st_atime);
if (!option(OPTMAILCHECKRECENT) || sb->st_mtime > mailbox->last_visited)
{
rc = 1;
-@@ -377,6 +428,7 @@
+@@ -374,9 +427,11 @@
+ int mutt_buffy_check (int force)
+ {
+ BUFFY *tmp;
++ struct dirent *de, *dp;
struct stat sb;
struct stat contex_sb;
time_t t;
sb.st_size=0;
contex_sb.st_dev=0;
-@@ -456,6 +508,20 @@
+@@ -456,6 +511,20 @@
case M_MH:
if ((tmp->new = mh_buffy (tmp->path)) > 0)
BuffyCount++;
+
-+ if ((dp = opendir (path)) == NULL)
++ if ((dp = opendir (tmp->path)) == NULL)
+ break;
+ tmp->msgcount = 0;
+ while ((de = readdir (dp)))
+ }
+ }
+ closedir (dp);
-+ }
++
break;
}
}
# Name: crypt_autosign
--- a/imap/imap.c
+++ b/imap/imap.c
-@@ -1521,7 +1521,7 @@
+@@ -1527,7 +1527,7 @@
imap_munge_mbox_name (munged, sizeof (munged), name);
snprintf (command, sizeof (command),