diff options
author | Junio C Hamano <junkio@cox.net> | 2006-02-09 00:55:17 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-02-09 00:55:17 -0800 |
commit | b92b2ce94e5673ab3a2fbc9c762b39aaf7d72de5 (patch) | |
tree | 19c9636198b53b5795dc54dbbd674ba52fac2e8a /update-index.c | |
parent | 2bcab24080dc97fc628e1b601a195a9a96773fac (diff) | |
download | git-b92b2ce94e5673ab3a2fbc9c762b39aaf7d72de5.tar.gz |
"Assume unchanged" git: --really-refresh fix.
The earlier round failed to make --really-refresh to mark
up-to-date index entry to valid again due to a trivial thinko.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'update-index.c')
-rw-r--r-- | update-index.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/update-index.c b/update-index.c index bb730509b8..ce1db38d16 100644 --- a/update-index.c +++ b/update-index.c @@ -161,8 +161,13 @@ static struct cache_entry *refresh_entry(struct cache_entry *ce, int really) return ERR_PTR(-errno); changed = ce_match_stat(ce, &st, really); - if (!changed) - return NULL; + if (!changed) { + if (really && assume_unchanged && + !(ce->ce_flags & htons(CE_VALID))) + ; /* mark this one VALID again */ + else + return NULL; + } if (ce_modified(ce, &st, really)) return ERR_PTR(-EINVAL); |