Allow cgi access to projects with a '+' in the name
Projects with a '+' in the name have been allowed for some time.
Starting with
9aa4b64c they have even been shown correctly in the
project list.
However, all the *.cgi links that include a ?name=proj query string
have failed to URL escape the '+'. This results in the '+' getting
processed by CGI::Util::unescape and turned into a ' '. And since
a ' ' is not valid in a project name the cgi scripts complain and die.
It's certainly possible to manually correct the URL replacing the '+'
with a '%2B' and access the cgi scripts that way, but that's very
clumsy.
Replace any '+' characters in ?name=proj query strings with '%2B' so
that the links work properly. CGI::Util::escape is NOT used because
that would also turn '/' into '%2F' which is unnecessary and also
ugly.
Note that it's NOT necessary to escape any '+' characters when they
appear in a path such as '/w/example+project.git' because those are
not subject to the '+' turns into ' ' problem.