maildir-mail.c revision 7ede6554e451ec039a67beec7d6ee4aff61d386e
281N/A/* Copyright (c) 2003-2009 Dovecot authors, see the included COPYING file */ 281N/A /* we're going to open the mail anyway */ 281N/A "fstat(maildir) failed: %m");
281N/A /* file exists in index file, but not in dovecot-uidlist anymore. */ 281N/A /* one reason this could happen is if we delayed opening 281N/A dovecot-uidlist and we're trying to open a mail that got recently 281N/A expunged. Let's test this theory first: */ 281N/A /* the message still exists in index. this means there's some 281N/A kind of a desync, which doesn't get fixed if cur/ mtime is 281N/A the same as in index. fix this by forcing a resync. */ 281N/A /* if this mail itself has non-pop3 fields we know we're not 281N/A /* get vsize decisions */ 281N/A /* also check if there are any non-[pv]size cached fields */ 281N/A /* either nothing is cached, or only vsize is cached. */ 281N/A /* if virtual size isn't cached permanently, 281N/A POP3 isn't being used */ 281N/A /* size can be included in filename */ 281N/A /* size can be included in uidlist entry */ 281N/A /* already in filename / uidlist. don't add it anywhere, 281N/A including to the uidlist if it's already in filename. 281N/A do some extra checks here to catch potential cache bugs. */ 281N/A "Corrupted virtual size for uid=%u: " 281N/A "Corrupted physical size for uid=%u: " 281N/A /* 1 = pop3-only, 0 = mixed, -1 = no pop3 */ 281N/A /* if size is wanted permanently, store it to uidlist 281N/A so that in case cache file gets lost we can get it quickly */ 281N/A /* fallback to reading the file */ 281N/A /* saved mail which hasn't been committed yet */ 281N/A /* special optimization case: use the base file name */ 281N/A /* make sure it gets removed from uidlist. 281N/A if it's in file name, we can't really do more than log it. */ 281N/A "Maildir filename has wrong W value: %s/%s/%s",