X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-new.c;h=f58a384b52b1cf48cbb7067b2e5f8743e9b0aeae;hp=6405cf0e5502c97893a30c46a577bb9f89be855b;hb=0a7bd1c728390efc5cc000987f6dd42638314328;hpb=fb1a3452dac707f7f4dfb359452c102bfcd2c18f diff --git a/notmuch-new.c b/notmuch-new.c index 6405cf0e..f58a384b 100644 --- a/notmuch-new.c +++ b/notmuch-new.c @@ -197,10 +197,21 @@ add_files_recursive (notmuch_database_t *notmuch, next = talloc_asprintf (notmuch, "%s/%s", path, entry->d_name); if (stat (next, st)) { + int err = errno; + + switch (err) { + case ENOENT: + /* The file was removed between scandir and now... */ + case EPERM: + case EACCES: + /* We can't read this file so don't add it to the cache. */ + continue; + } + fprintf (stderr, "Error reading %s: %s\n", next, strerror (errno)); ret = NOTMUCH_STATUS_FILE_ERROR; - continue; + goto DONE; } if (S_ISREG (st->st_mode)) {