From: Steffen Prohaska Date: Thu, 22 Nov 2007 06:13:50 GMT Subject: Re: [PATCH 3/3] Replace setenv(GIT_DIR_ENVIRONMENT, ...) with set_git_dir() Message-ID: In-Reply-To: <7v63zv9fel.fsf@gitster.siamese.dyndns.org> On Nov 22, 2007, at 3:34 AM, Junio C Hamano wrote: > Johannes Schindelin writes: > >> Hi, >> >> On Wed, 21 Nov 2007, Steffen Prohaska wrote: >> >>> We have a function set_git_dir(). So let's use it, instead of >>> setting >>> the evironment directly. >> >> Does this not have a fundamental issue? When you call other git >> programs >> with run_command(), you _need_ GIT_DIR to be set, no? > > It is much worse. set_git_dir() does not just setenv() but does > setup_git_env() as well. What do your comments mean? My understanding is that set_git_dir() sets the environment and then calls setup_git_env() to cache all pointers. This call updates dangling pointer if they have been cached earlier. But maybe there is a hidden secret that I don't see. Steffen