From: Thomas Gummerer Date: Thu, 28 Nov 2013 09:57:02 GMT Subject: Re: [PATCH v4 20/24] introduce GIT_INDEX_VERSION environment variable Message-ID: <20131128095615.GA25478@goose.lan> In-Reply-To: On 11/27, Junio C Hamano wrote: > Eric Sunshine writes: > > > On Wed, Nov 27, 2013 at 7:00 AM, Thomas Gummerer wrote: > >> Respect a GIT_INDEX_VERSION environment variable, when a new index is > >> initialized. Setting the environment variable will not cause existing > >> index files to be converted to another format for additional safety. > >> > >> Signed-off-by: Thomas Gummerer > >> --- > >> diff --git a/read-cache.c b/read-cache.c > >> index 46551af..04430e5 100644 > >> --- a/read-cache.c > >> +++ b/read-cache.c > >> @@ -1233,8 +1233,13 @@ static struct cache_entry *refresh_cache_entry(struct cache_entry *ce, int reall > >> void initialize_index(struct index_state *istate, int version) > >> { > >> istate->initialized = 1; > >> - if (!version) > >> - version = INDEX_FORMAT_DEFAULT; > >> + if (!version) { > >> + char *envversion = getenv("GIT_INDEX_VERSION"); > >> + if (!envversion) > >> + version = INDEX_FORMAT_DEFAULT; > >> + else > >> + version = atoi(envversion); > > > > Do you want to check that atoi() returned a valid value and emit a > > diagnostic if it did not? > > > Good eyes. > > We use strtoul() for this kind of thing instead of atoi() for format > checking. The code also needs to make sure that the value obtained > thusly are among the versions that are supported. > > Thanks. Thanks both. Will use strtoul and check the value in the re-roll. -- Thomas