From: Mark Rada <markrada26@gmail.com>
To: Jakub Narebski <jnareb@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: Gitweb giving me some warnings in Apache's error_log
Date: Fri, 7 Aug 2009 13:56:03 -0400 [thread overview]
Message-ID: <88f4c4ee0908071056g5d9da83ft77d56ec2e5e84bac@mail.gmail.com> (raw)
In-Reply-To: <m3my6bpv6v.fsf@localhost.localdomain>
Let me double check my understanding.
The warnings will not occur if Gitweb is run as a regular CGI script
because then it won't be nested inside a call from
ModPerl::Registry?
Will it also not complain if I provided my own $project_list in the first place?
Also, I looked at some examples from the second and third page of an article
on the subject, http://www.perl.com/pub/a/2002/05/07/mod_perl.html?
and it looks "fixable". Is there a particular reason why any of them are not
desirable?
Note: I haven't tried anything yet, just wondering if you know off hand
--
Mark A Rada (ferrous26)
marada@uwaterloo.ca
On Fri, Aug 7, 2009 at 10:14 AM, Jakub Narebski<jnareb@gmail.com> wrote:
> Mark A Rada <markrada26@gmail.com> writes:
>
>> It doesn't seem to cause any other problems, but I don't know if it is
>> significant or not.
>>
>> [Fri Aug 7 08:51:13 2009] gitweb.cgi: Variable "$project_maxdepth"
>> may be unavailable at /var/www/private/gitweb/cgi-bin/gitweb.cgi line
>> 2296.
>> [Fri Aug 7 08:51:13 2009] gitweb.cgi: Variable "$projectroot" may be
>> unavailable at /var/www/private/gitweb/cgi-bin/gitweb.cgi line 2304.
>>
>>
>> Apache 2.2.12/ mod_perl 2.04/ perl 5.8.8
>
> From perldiag(1) manpage:
>
> Variable "%s" may be unavailable
>
> (W closure) An inner (nested) anonymous subroutine is inside a
> named subroutine, and outside that is another subroutine; and the
> anonymous (innermost) subroutine is referencing a lexical variable
> defined in the outermost subroutine. For example:
>
> sub outermost { my $a; sub middle { sub { $a } } }
>
> If the anonymous subroutine is called or referenced (directly or
> indirectly) from the outermost subroutine, it will share the
> variable as you would expect. But if the anonymous subroutine is
> called or referenced when the outermost subroutine is not active,
> it will see the value of the shared variable as it was before and
> during the *first* call to the outermost subroutine, which is
> probably not what you want.
>
> In these circumstances, it is usually best to make the middle
> subroutine anonymous, using the "sub {}" syntax. Perl has
> specific support for shared variables in nested anonymous
> subroutines; a named subroutine in between interferes with this
> feature.
>
> The warning is about 'wanted' anonymous subroutine passed to
> File::Find::find. The "middle" subroutine is git_get_projects_list,
> and the "outermost" is mod_perl / ModPerl::Registry request loop.
>
> We can't make git_get_projects_list anonymous, but anonymous
> subroutine is not called or referenced outside git_get_projects_list,
> nor it is called or referenced outside mod_perl request/event loop.
>
> This warning is harmless... but I do not know how to silence it.
>
> --
> Jakub Narebski
> Poland
> ShadeHawk on #git
>
next prev parent reply other threads:[~2009-08-07 18:04 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-07 13:00 Gitweb giving me some warnings in Apache's error_log Mark A Rada
2009-08-07 14:14 ` Jakub Narebski
2009-08-07 17:56 ` Mark Rada [this message]
2009-08-10 14:57 ` Jakub Narebski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=88f4c4ee0908071056g5d9da83ft77d56ec2e5e84bac@mail.gmail.com \
--to=markrada26@gmail.com \
--cc=git@vger.kernel.org \
--cc=jnareb@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).