Bug 122560 - Remove hardcode, add a "Software caused connection abort" error

git-svn-id: svn://svn.office.custis.ru/3rdparty/bugzilla.org/trunk@1752 6955db30-a419-402b-8a0d-67ecbb4d7f56
master
vfilippov 2013-08-12 14:56:49 +00:00
parent e807e085c4
commit 10f3763bf9
4 changed files with 19 additions and 7 deletions

View File

@ -79,7 +79,7 @@ sub _die_error
$msg =~ s/\s*$//so;
# We are not interested in getting "Software caused connection abort" errors
# on each "Stop" click in the browser.
if ($msg !~ /(^|(Apache2::RequestIO::print|:Apache2 IO write): \(103\) )(Программа вызвала сброс соединения|Software caused connection abort) at /iso)
if ($msg !~ /^(Apache2::RequestIO::print|:Apache2 IO write): \(103\)|^[^\n]*(Программа вызвала сброс соединения|Software caused connection abort) at /iso)
{
$msg = { eval_error => $msg };
Bugzilla::Error::ThrowCodeError('eval_error', $msg);

View File

@ -1648,7 +1648,7 @@ sub split_order_term
my $fragment = shift;
my ($col, $dir) = split /\s+/, $fragment, 2;
$col = lc $col;
$dir = uc $dir;
$dir = uc $dir if $dir;
$dir = '' if $dir ne 'DESC' && $dir ne 'ASC';
return wantarray ? ($col, $dir) : $col;
}

View File

@ -97,7 +97,7 @@ sub handle_request
$CGI::USE_PARAM_SEMICOLONS = 0;
# Determine SCRIPT_FILENAME
my $script = $ENV{SCRIPT_FILENAME};
$ENV{REQUEST_URI} =~ s!^/*bugs\d*/*!/!iso;
$ENV{REQUEST_URI} =~ s!^/*!/!iso;
unless ($script)
{
($script) = $ENV{REQUEST_URI} =~ m!/+([^\?\#]*)!so;
@ -232,6 +232,11 @@ For example to support multiple Bugzilla 'projects' specify
http_env PROJECT
And specify an appropriate project in 'X-Project' header on your frontend:
And specify an appropriate project in 'X-Project' header on your frontend.
For example, for nginx:
proxy_set_header X-Project 'project';
Or for Apache:
RequestHeader set X-Project project

View File

@ -54,10 +54,11 @@ if (($id = $args->{ga_id}) && !$args->{ga_client})
{
my $tm;
($key, $tm) = $dbh->selectrow_array("SELECT secret, expire FROM globalauth WHERE id=?", undef, $id);
if (time > $tm)
if ($key && time > $tm)
{
$key = undef;
$dbh->do("DELETE FROM globalauth WHERE id=?", undef, $id);
die "GlobalAuth key expired";
}
if ($key)
{
@ -127,10 +128,16 @@ if (($id = $args->{ga_id}) && !$args->{ga_client})
print $cgi->redirect(-location => "$url");
exit;
}
else
{
die "Global Auth key not found";
}
}
}
die("Unknown action passed to Global Auth");
else
{
die("Global Auth client mode disabled in Bugzilla");
}
1;
__END__