On Wed 24 Aug 2011 03:11, James Vasile <james at hackervisions.org> writes:
> No known mail client or fetch tool stores mail in dot files, because > files that start with '.' are usually used to store metadata > (i.e. state or configuration) as opposed to subject-matter data. > > Some mail fetch tools (including mbsync) and clients use dot files in > maildirs to store metadata. Notmuch should not warn that it is > ignoring these files, since it *should* ignore them. Indeed, it > should ignore all dot files. > --- > notmuch-new.c | 4 ++++ > 1 files changed, 4 insertions(+), 0 deletions(-) > > diff --git a/notmuch-new.c b/notmuch-new.c > index 7d17793..87ee07e 100644 > --- a/notmuch-new.c > +++ b/notmuch-new.c > @@ -428,6 +428,10 @@ add_files_recursive (notmuch_database_t *notmuch, > continue; > } > > + /* Don't add dot files. */ > + if (entry->d_name[0] == '.') > + continue; > + > /* We're now looking at a regular file that doesn't yet exist > * in the database, so add it. */ > next = talloc_asprintf (notmuch, "%s/%s", path, entry->d_name); > -- > 1.7.5.4 yesterday, when I was checking code for something else I was thinking the same issue: Instead of the above the code sections: /* XXX: Eventually we'll want more sophistication to let the * user specify files to be ignored. */ if (strcmp (entry->d_name, ".") == 0 || strcmp (entry->d_name, "..") == 0 || (is_maildir && strcmp (entry->d_name, "tmp") == 0) || strcmp (entry->d_name, ".notmuch") ==0) { continue; } and /* XXX: Eventually we'll want more sophistication to let the * user specify files to be ignored. */ if (strcmp (entry->d_name, ".") == 0 || strcmp (entry->d_name, "..") == 0 || strcmp (entry->d_name, ".notmuch") == 0) { continue; } Could be simplified to check just starting dot (.) (and tmp in add_files_recursive() in case of is_maildir). Maybe the count_files() function (the latter one above) should also do the same check so that the numbers count_files() and add_files() are (almost the) same, causing less confusion to the user. I personally don't want to *exclude* more -- I was planning to hack in code that only include a list of directories under top level 'db_path'. Tomi