]> Pileus Git - ~andy/fetchmail/blobdiff - imap.c
Update German translation.
[~andy/fetchmail] / imap.c
diff --git a/imap.c b/imap.c
index 397b391b153f849928158804574ae81c5da2ccae..cb87eda5378f258f20955c3524f2f84c6d29cd0e 100644 (file)
--- a/imap.c
+++ b/imap.c
@@ -1166,7 +1166,8 @@ static int imap_fetch_headers(int sock, struct query *ctl,int number,int *lenp)
 
        /* try to recover for some responses */
        if (!strncmp(buf, "* NO", 4) ||
-               !strncmp(buf, "* BAD", 5))
+               !strncmp(buf, "* BAD", 5) ||
+               strstr(buf, "FETCH ()"))
        {
            return(PS_TRANSIENT);
        }
@@ -1181,7 +1182,7 @@ static int imap_fetch_headers(int sock, struct query *ctl,int number,int *lenp)
        /* an unexpected tagged response */
        if (outlevel > O_SILENT)
            report(stderr, GT_("Incorrect FETCH response: %s.\n"), buf);
-       return(PS_ERROR);
+       return(PS_TRANSIENT);
     }
     return(ok);
 }
@@ -1299,20 +1300,11 @@ static int imap_delete(int sock, struct query *ctl, int number)
     int        ok;
     /* Select which flags to set on message deletion: */
     const char delflags_seen[] = "\\Seen \\Deleted";
-    const char delflags_unseen[] = "\\Deleted";
     static const char *delflags;
     /* Which environment variable to look for: */
-    const char dis_env[] = "FETCHMAIL_IMAP_DELETED_REMAINS_UNSEEN";
 
-    if (!delflags) {
-       char *tmp;
-       if ((tmp = getenv(dis_env)) != NULL && *tmp) {
-           delflags = delflags_unseen;
-       } else {
-           /* DEFAULT since many fetchmail versions <= 6.3.X */
-           delflags = delflags_seen;
-       }
-    }
+    /* DEFAULT since many fetchmail versions <= 6.3.X */
+    delflags = delflags_seen;
 
     (void)ctl;
     /* expunges change the fetch numbers */