Bug 309796: Whining needs to check for shutdown (silently) before trying database access - Patch by Frédéric Buclin <LpSolit@gmail.com> r=joel a=justdave
git-svn-id: svn://10.0.0.236/trunk@181728 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -49,6 +49,11 @@ use constant SHUTDOWNHTML_EXEMPT => [
|
||||
'checksetup.pl',
|
||||
];
|
||||
|
||||
# Non-cgi scripts that should silently exit.
|
||||
use constant SHUTDOWNHTML_EXIT_SILENTLY => [
|
||||
'whine.pl'
|
||||
];
|
||||
|
||||
#####################################################################
|
||||
# Global Code
|
||||
#####################################################################
|
||||
@@ -62,6 +67,15 @@ use constant SHUTDOWNHTML_EXEMPT => [
|
||||
if (Param("shutdownhtml")
|
||||
&& lsearch(SHUTDOWNHTML_EXEMPT, basename($0)) == -1)
|
||||
{
|
||||
# Allow non-cgi scripts to exit silently (without displaying any
|
||||
# message), if desired. At this point, no DBI call has been made
|
||||
# yet, and no error will be returned if the DB is inaccessible.
|
||||
if (lsearch(SHUTDOWNHTML_EXIT_SILENTLY, basename($0)) > -1
|
||||
&& !i_am_cgi())
|
||||
{
|
||||
exit;
|
||||
}
|
||||
|
||||
# For security reasons, log out users when Bugzilla is down.
|
||||
# Bugzilla->login() is required to catch the logincookie, if any.
|
||||
my $user = Bugzilla->login(LOGIN_OPTIONAL);
|
||||
|
||||
@@ -93,12 +93,6 @@ my $sth_schedules_by_event = $dbh->prepare(
|
||||
# After that, it looks over each user to see if they have schedules that need
|
||||
# running, then runs those and generates the email messages.
|
||||
|
||||
# exit quietly if the system is shut down
|
||||
if (Param('shutdownhtml')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
# Send whines from the address in the 'maintainer' Parameter so that all
|
||||
# Bugzilla-originated mail appears to come from a single address.
|
||||
my $fromaddress = Param('maintainer');
|
||||
|
||||
Reference in New Issue
Block a user