From: Timo Sirainen Date: Mon, 2 Feb 2009 19:57:33 +0000 (-0500) Subject: nfs+maildir: lseek() may also return ESTALE failure, handle it. X-Git-Tag: 1.2.beta1~40 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=5b237a9d400a434920c8fd77ae53e6b44c38d3fb;p=thirdparty%2Fdovecot%2Fcore.git nfs+maildir: lseek() may also return ESTALE failure, handle it. --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/maildir/maildir-uidlist.c b/src/lib-storage/index/maildir/maildir-uidlist.c index 0fe4911e73..579d1a808f 100644 --- a/src/lib-storage/index/maildir/maildir-uidlist.c +++ b/src/lib-storage/index/maildir/maildir-uidlist.c @@ -603,6 +603,10 @@ maildir_uidlist_update_read(struct maildir_uidlist *uidlist, /* the file was updated */ fd = uidlist->fd; if (lseek(fd, 0, SEEK_SET) < 0) { + if (errno == ESTALE && try_retry) { + *retry_r = TRUE; + return -1; + } mail_storage_set_critical(storage, "lseek(%s) failed: %m", uidlist->path); return -1;