summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjake%acutex.net <>2001-08-14 04:11:31 +0200
committerjake%acutex.net <>2001-08-14 04:11:31 +0200
commit669eed6c9dcf6300c3e3f5db1970f2a26c5317e6 (patch)
tree5b644d59f328f95993909050b666f2a3cafecfb9
parent45e6db585277cc4bbd44a3242c082b3354bb27a3 (diff)
downloadbugzilla-669eed6c9dcf6300c3e3f5db1970f2a26c5317e6.tar.gz
bugzilla-669eed6c9dcf6300c3e3f5db1970f2a26c5317e6.tar.xz
Fix for bug 95082 - Param('shutdownhtml') doesn't completely shut down bugzilla.
r= justdave@syndicomm.com
-rw-r--r--CGI.pl19
-rwxr-xr-xdoeditparams.cgi2
-rwxr-xr-xeditparams.cgi2
-rw-r--r--globals.pl17
-rwxr-xr-xquery.cgi3
5 files changed, 36 insertions, 7 deletions
diff --git a/CGI.pl b/CGI.pl
index 5a86b7ad1..fb3d0178d 100644
--- a/CGI.pl
+++ b/CGI.pl
@@ -962,7 +962,7 @@ Content-type: text/html
exit();
}
print "Content-type: text/html\n\n";
- PutHeader("Login", undef, undef, undef, 1);
+ PutHeader("Login");
if(Param("useLDAP")) {
print "I need a legitimate LDAP username and password to continue.\n";
} else {
@@ -1059,7 +1059,7 @@ Content-type: text/html
sub PutHeader {
- my ($title, $h1, $h2, $extra, $ignoreshutdown, $jscript) = (@_);
+ my ($title, $h1, $h2, $extra, $jscript) = (@_);
if (!defined $h1) {
$h1 = $title;
@@ -1071,6 +1071,16 @@ sub PutHeader {
$extra = "";
}
$jscript ||= "";
+ # If we are shutdown, we want a very basic page to give that
+ # information. Also, the page title should indicate that
+ # we are down.
+ if (Param('shutdownhtml')) {
+ $title = "Bugzilla is Down";
+ $h1 = "Bugzilla is currently down";
+ $h2 = "";
+ $extra = "";
+ $jscript = "";
+ }
print "<HTML><HEAD>\n<TITLE>$title</TITLE>\n";
print Param("headerhtml") . "\n$jscript\n</HEAD>\n";
@@ -1094,7 +1104,10 @@ sub PutHeader {
print "</TD></TR></TABLE>\n";
if (Param("shutdownhtml")) {
- if (!$ignoreshutdown) {
+ # If we are dealing with the params page, we want
+ # to ignore shutdownhtml
+ if ($0 !~ m:[\\/](do)?editparams.cgi$:) {
+ print "<p>\n";
print Param("shutdownhtml");
exit;
}
diff --git a/doeditparams.cgi b/doeditparams.cgi
index 06019b817..0ecd4be76 100755
--- a/doeditparams.cgi
+++ b/doeditparams.cgi
@@ -44,7 +44,7 @@ if (!UserInGroup("tweakparams")) {
}
-PutHeader("Saving new parameters", undef, undef, undef, 1);
+PutHeader("Saving new parameters");
foreach my $i (@::param_list) {
# print "Processing $i...<BR>\n";
diff --git a/editparams.cgi b/editparams.cgi
index 91ddca7f9..e416184f6 100755
--- a/editparams.cgi
+++ b/editparams.cgi
@@ -44,7 +44,7 @@ if (!UserInGroup("tweakparams")) {
-PutHeader("Edit parameters", undef, undef, undef, 1);
+PutHeader("Edit parameters");
print "This lets you edit the basic operating parameters of bugzilla.\n";
print "Be careful!\n";
diff --git a/globals.pl b/globals.pl
index a3412d634..f41397451 100644
--- a/globals.pl
+++ b/globals.pl
@@ -200,6 +200,15 @@ sub SendSQL {
if ($str =~ /^LOCK TABLES/i && $str !~ /shadowlog/ && $::dbwritesallowed) {
$str =~ s/^LOCK TABLES/LOCK TABLES shadowlog WRITE, /i;
}
+ # If we are shutdown, we don't want to run queries except in special cases
+ if (Param('shutdownhtml')) {
+ if ($0 =~ m:[\\/](do)?editparams.cgi$:) {
+ $::ignorequery = 0;
+ } else {
+ $::ignorequery = 1;
+ return;
+ }
+ }
SqlLog($str);
$::currentquery = $::db->prepare($str);
$::currentquery->execute
@@ -221,6 +230,10 @@ sub SendSQL {
}
sub MoreSQLData {
+ # $::ignorequery is set in SendSQL
+ if ($::ignorequery) {
+ return 0;
+ }
if (defined @::fetchahead) {
return 1;
}
@@ -231,6 +244,10 @@ sub MoreSQLData {
}
sub FetchSQLData {
+ # $::ignorequery is set in SendSQL
+ if ($::ignorequery) {
+ return;
+ }
if (defined @::fetchahead) {
my @result = @::fetchahead;
undef @::fetchahead;
diff --git a/query.cgi b/query.cgi
index 067f76036..16c783864 100755
--- a/query.cgi
+++ b/query.cgi
@@ -533,8 +533,7 @@ ENDSCRIPT
PutHeader("Bugzilla Query Page", "Query",
"This page lets you search the database for recorded bugs.",
- q{onLoad="selectProduct(document.forms[0]);"},
- 0, $jscript);
+ q{onLoad="selectProduct(document.forms[0]);"}, $jscript);
push @::legal_resolution, "---"; # Oy, what a hack.