git-svn-id: svn://svn.berlios.de/mutt-ng/trunk@83 e385b8ad-14ed-0310-8656-cc95a2468c6d
[apps/madmutt.git] / buffy.c
diff --git a/buffy.c b/buffy.c
index 88e1cbd..7f5b4b7 100644 (file)
--- a/buffy.c
+++ b/buffy.c
  *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
  */
 
+#if HAVE_CONFIG_H
+# include "config.h"
+#endif
+
 #include "mutt.h"
 #include "buffy.h"
 #include "mailbox.h"
@@ -407,13 +411,21 @@ int mutt_buffy_check (int force)
              (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T')))
          {
            /* one new and undeleted message is enough */
-           BuffyCount++;
-           tmp->has_new = tmp->new = 1;
-        tmp->msgcount++;
-               tmp->msg_unread++;
+            if (tmp->new != 1)
+           {
+               BuffyCount++;
+              tmp->has_new = tmp->new = 1;
+           }
+           tmp->msgcount++;
+           tmp->msg_unread++;
          }
        }
        closedir (dirp);
+#if 0
+  /* I commented this out because it led to an infite "New mail in ..." loop,
+   * and when looking at the code, the check seems to be overly eager.
+   *   -- ak
+   */
        snprintf (path, sizeof (path), "%s/cur", tmp->path);
        if ((dirp = opendir (path)) == NULL)
        {
@@ -433,6 +445,7 @@ int mutt_buffy_check (int force)
          }
        }
        closedir (dirp);
+#endif
        break;
 
       case M_MH: