gitweb: Check that $site_header etc. are defined before using them

If one of $site_header, $site_footer or $home_text is not defined, you
get extraneous errors in the web logs, for example (line wrapped for
better readibility):

 [Wed Jan 13 16:55:42 2010] [error] [client ::1] [Wed Jan 13 16:55:42 2010]
 gitweb.cgi: Use of uninitialized value $site_header in -f at
 /var/www/gitweb/gitweb.cgi line 3287., referer: http://git/gitweb.cgi

This ensures that those variables are defined before trying to use it.

Note that such error can happen only because of an error in gitweb
config file; building gitweb.cgi can make mentioned variables holding
empty string (it is even the default), but they are still defined.

Signed-off-by: John 'Warthog9' Hawley <warthog9@kernel.org>
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
John 'Warthog9' Hawley 2010-01-30 23:30:41 +01:00 committed by Junio C Hamano
parent 62331ef163
commit 24d4afcdc7

View file

@ -3254,7 +3254,7 @@ sub git_header_html {
print "</head>\n" .
"<body>\n";
if (-f $site_header) {
if (defined $site_header && -f $site_header) {
insert_file($site_header);
}
@ -3355,7 +3355,7 @@ sub git_footer_html {
print "</div>\n"; # class="page_footer"
}
if (-f $site_footer) {
if (defined $site_footer && -f $site_footer) {
insert_file($site_footer);
}
@ -4781,7 +4781,7 @@ sub git_project_list {
}
git_header_html();
if (-f $home_text) {
if (defined $home_text && -f $home_text) {
print "<div class=\"index_include\">\n";
insert_file($home_text);
print "</div>\n";