X-Git-Url: https://git.ladys.computer/Gitweb/blobdiff_plain/427433c9d2a03fbe9535cc18685567c09009432e5f1fd4a79cfbd9aec89b281a..186b594eac227d7c104bf0e0c84819ee4e69774cd0c9df2050ede3aecfa1a909:/gitweb.perl diff --git a/gitweb.perl b/gitweb.perl index e6bbf78..df186d8 100755 --- a/gitweb.perl +++ b/gitweb.perl @@ -7,6 +7,7 @@ # # This program is licensed under the GPLv2 +use 5.008; use strict; use warnings; use CGI qw(:standard :escapeHTML -nosticky); @@ -781,10 +782,10 @@ sub evaluate_path_info { 'history', ); - # we want to catch + # we want to catch, among others # [$hash_parent_base[:$file_parent]..]$hash_parent[:$file_name] my ($parentrefname, $parentpathname, $refname, $pathname) = - ($path_info =~ /^(?:(.+?)(?::(.+))?\.\.)?(.+?)(?::(.+))?$/); + ($path_info =~ /^(?:(.+?)(?::(.+))?\.\.)?([^:]+?)?(?::(.+))?$/); # first, analyze the 'current' part if (defined $pathname) { @@ -1068,6 +1069,7 @@ sub run_request { evaluate_uri(); evaluate_gitweb_config(); + evaluate_git_version(); check_loadavg(); # $projectroot and $projects_list might be set in gitweb config file @@ -1120,7 +1122,6 @@ sub evaluate_argv { sub run { evaluate_argv(); - evaluate_git_version(); $pre_listen_hook->() if $pre_listen_hook;