Re: [PATCH v3 04/24] read-cache: clear version in discard_index()
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 20, 2013, 19:34 UTC
- Message-ID
- <xmqqmwoc5f6t.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <1376854933-31241-5-git-send-email-t.gummerer@gmail.com>
Thomas Gummerer <t.gummerer@gmail.com> writes:
> All fields except index_state->version are reset in discard_index. > Reset the version too.
What is the practical consequence of not clearing this field? I somehow have a feeling that this was done deliberately, so that we can stick to the version of the index file format better, once the user said "update-index --index-version $N" to set it up. I suspect that the patch would affect a codepath that does read_cache(), calls discard_index(), populates the index and then does write_cache(). We stick to the version the user specified earlier in our current code, while the patched code will revert to whatever default built into your Git binary, no?
Show 18 quoted lines
> > Signed-off-by: Thomas Gummerer <t.gummerer@gmail.com> > --- > read-cache.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/read-cache.c b/read-cache.c > index de0bbcd..1e22f6f 100644 > --- a/read-cache.c > +++ b/read-cache.c > @@ -1558,6 +1558,7 @@ int discard_index(struct index_state *istate) > for (i = 0; i < istate->cache_nr; i++) > free(istate->cache[i]); > resolve_undo_clear_index(istate); > + istate->version = 0; > istate->cache_nr = 0; > istate->cache_changed = 0; > istate->timestamp.sec = 0;