From 6472dbf4b7fdec3bd59d7622ef477a035e34c67a Mon Sep 17 00:00:00 2001 From: David Bremner Date: Sun, 26 Dec 2021 08:24:10 -0400 Subject: [PATCH] cli/new: only ignore .notmuch at top level Since the bug was first reported in [1], notmuch has gained the ability to have the database located outside the mail root, hence this this change differs slightly from Jani's proposed solution [2] in not using notmuch_database_get_path, but rather the already retrieved mail_root. [1]: id:87mwhifu9a.fsf@trouble.defaultvalue.org [2]: id:87ios5v59p.fsf@nikula.org --- notmuch-new.c | 5 +++-- test/T050-new.sh | 1 - 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/notmuch-new.c b/notmuch-new.c index 5b8fa340..346e6469 100644 --- a/notmuch-new.c +++ b/notmuch-new.c @@ -601,11 +601,12 @@ add_files (notmuch_database_t *notmuch, continue; } - /* Ignore the .notmuch directory and any "tmp" directory + /* Ignore any top level .notmuch directory and any "tmp" directory * that appears within a maildir. */ if ((is_maildir && strcmp (entry->d_name, "tmp") == 0) || - strcmp (entry->d_name, ".notmuch") == 0) + (strcmp (entry->d_name, ".notmuch") == 0 + && (strcmp (path, state->mail_root)) == 0)) continue; next = talloc_asprintf (notmuch, "%s/%s", path, entry->d_name); diff --git a/test/T050-new.sh b/test/T050-new.sh index db13090b..6791f87c 100755 --- a/test/T050-new.sh +++ b/test/T050-new.sh @@ -352,7 +352,6 @@ test_expect_code 1 "NOTMUCH_NEW --debug 2>&1" notmuch config set new.tags $OLDCONFIG test_begin_subtest ".notmuch only ignored at top level" -test_subtest_known_broken generate_message '[dir]=foo/bar/.notmuch/cur' '[subject]="Do not ignore, very important"' NOTMUCH_NEW > OUTPUT notmuch search subject:Do-not-ignore | notmuch_search_sanitize >> OUTPUT