We look at the modified time of the database and the directory to decide whether we need to look at only the subdirectories. ie, if directory modified time is < database modified time then we have already looking at all the files withing the directory. So we just need to iterate through the subdirectories But with symlinks we need to make sure we follow them even if the directory modified time is less than database modified time Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> --- notmuch-new.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/notmuch-new.c b/notmuch-new.c index e32b92a..ba5bb5a 100644 --- a/notmuch-new.c +++ b/notmuch-new.c @@ -149,7 +149,7 @@ add_files_recursive (notmuch_database_t *notmuch, /* If this directory hasn't been modified since the last * add_files, then we only need to look further for * sub-directories. */ - if (path_mtime <= path_dbtime && entry->d_type != DT_DIR) + if (path_mtime <= path_dbtime && entry->d_type == DT_REG) continue; /* Ignore special directories to avoid infinite recursion. -- 1.6.5.2.74.g610f9