diff --git a/read-cache.c b/read-cache.c
index 6b7d16c554338169057b89c61229367930d9320c..3b20a142ea93f67d8a1246ebd27797aad8035e6e 100644 (file)
--- a/read-cache.c
+++ b/read-cache.c
struct cache_entry *ce = cache[i];
if (ce->ce_flags & CE_REMOVE)
continue;
- if (is_racy_timestamp(istate, ce))
+ if (!ce_uptodate(ce) && is_racy_timestamp(istate, ce))
ce_smudge_racily_clean_entry(ce);
if (ce_write_entry(&c, newfd, ce) < 0)
return -1;