Subject: Re: Potential bug in gitweb 1.7.2

From: Jakub Narebski <[email-masked]>
Date: Mon, 26 Jul 2010 16:23:04 +0200

On Mon, 26 Jul 2010, Julio Lajara wrote:

> Hi, Ive managed to narrow down the issue to a line in the gitolite's 
> contrib/gitweb/gitweb.conf that I appended to the default 
> /etc/gitweb.conf . It was working with 1.7.0.4 but 1.7.2 doesnt like 
> this line:
> 
> $ENV{GL_USER} = $cgi->remote_user || "gitweb";
> 
> I corrected it by just setting it equal to gitweb and all is well now.

I think the following commit is the reason that this stopped working
869d588 (gitweb: Move evaluate_gitweb_config out of run_request, 2010-07-05)

>>From its commit message:

    gitweb: Move evaluate_gitweb_config out of run_request
    
    Move evaluate_gitweb_config() and evaluate_git_version() out of
    run_request() to run(), making them not run one for each request.
    This changes how git behaves in FastCGI case.
    
    This change makes it impossible to have config which changes with
    request, but I don't think anyone relied on such (hidden action)
    behavior.

I guess I was wrong about that.  I wonder if it would be possible to 
re-enable this feature (which I think is needed to be able to use
$cgi->remote_user) but without having all pay the [slight] performance
penalty of including (and I think parsing) config file once per each
request.

-- 
Jakub Narebski
Poland