From: Nguyen Thai Ngoc Duy Date: Wed, 28 Nov 2007 17:24:46 GMT Subject: Re: [PATCH] Do check_repository_format() early Message-ID: In-Reply-To: On Nov 29, 2007 12:18 AM, Johannes Schindelin wrote: > Hi, > > On Thu, 29 Nov 2007, Nguyen Thai Ngoc Duy wrote: > > > On Nov 29, 2007 12:05 AM, Johannes Schindelin > > wrote: > > > > > > On Wed, 28 Nov 2007, Nguyen Thai Ngoc Duy wrote: > > > > > > > @@ -246,8 +246,13 @@ const char *setup_git_directory_gently(int *nongit_ok) > > > > static char buffer[1024 + 1]; > > > > const char *retval; > > > > > > > > - if (!work_tree_env) > > > > - return set_work_tree(gitdirenv); > > > > + if (!work_tree_env) { > > > > + retval = set_work_tree(gitdirenv); > > > > + /* config may override worktree */ > > > > + check_repository_format(); > > > > + return retval; > > > > + } > > > > + check_repository_format(); > > > > > > Why not move this check before the if? Other than that, ACK. > > > > If so it would be called twice if work_tree_env is not set. > > Well, I would have left the original > > if (!work_tree_env) > return set_work_tree(gitdirenv); > > alone... > > If that is not possible, it might be good to add a comment as to why. I did, and the tests failed. I also added a comment "config may override worktree". set_work_tree() will reset git_work_tree_cfg but the correct behaviour is config takes precedence (from comment of set_work_tree). The comment is clearly not clear enough. Maybe this? + if (!work_tree_env) { + retval = set_work_tree(gitdirenv); + /* config may override worktree (see set_work_tree comment) */ + check_repository_format(); + return retval; + } > Ciao, > Dscho > > -- Duy