diff options
Diffstat (limited to 'nscd/cache.c')
-rw-r--r-- | nscd/cache.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/nscd/cache.c b/nscd/cache.c index 52ef038..e57c868 100644 --- a/nscd/cache.c +++ b/nscd/cache.c @@ -142,10 +142,12 @@ prune_cache (struct database *table, time_t now) if (stat (table->filename, &st) < 0) { char buf[128]; - /* We cannot stat() the file, disable file checking. */ + /* We cannot stat() the file, disable file checking if the + file does not exist. */ dbg_log (_("cannot stat() file `%s': %s"), table->filename, strerror_r (errno, buf, sizeof (buf))); - table->check_file = 0; + if (errno == ENOENT) + table->check_file = 0; } else { @@ -153,7 +155,7 @@ prune_cache (struct database *table, time_t now) { /* The file changed. Invalidate all entries. */ now = LONG_MAX; - st.st_mtime = table->file_mtime; + table->file_mtime = st.st_mtime; } } } |