mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-26 18:31:29 +00:00
Bug 140006 - ThrowTemplateError should try a template before using print statements. Patch by gerv, r=bbaetz, justdave.
This commit is contained in:
parent
0aabe0f310
commit
e56fdc0093
@ -916,24 +916,33 @@ sub ThrowUserError {
|
||||
# This should only be called if a template->process() fails.
|
||||
# The Content-Type will already have been printed.
|
||||
sub ThrowTemplateError {
|
||||
my ($error) = html_quote((@_));
|
||||
my $maintainer = Param('maintainer');
|
||||
($vars->{'error'}) = (@_);
|
||||
$vars->{'title'} = "Template Error";
|
||||
|
||||
print <<END;
|
||||
<tt>
|
||||
<p>
|
||||
Bugzilla has suffered an internal error. Please save this page and send
|
||||
it to $maintainer with details of what you were doing at the time this
|
||||
message appeared.
|
||||
</p>
|
||||
<script> <!--
|
||||
document.write("<p>URL: " + document.location + "</p>");
|
||||
// -->
|
||||
</script>
|
||||
<p>Template->process() failed: $error</p>
|
||||
</tt>
|
||||
# Try a template first; but if this one fails too, fall back
|
||||
# on plain old print statements.
|
||||
if (!$template->process("global/code-error.html.tmpl", $vars)) {
|
||||
my $maintainer = Param('maintainer');
|
||||
my $error = html_quote($vars->{'error'});
|
||||
my $error2 = html_quote($template->error());
|
||||
print <<END;
|
||||
<tt>
|
||||
<p>
|
||||
Bugzilla has suffered an internal error. Please save this page and
|
||||
send it to $maintainer with details of what you were doing at the
|
||||
time this message appeared.
|
||||
</p>
|
||||
<script> <!--
|
||||
document.write("<p>URL: " + document.location + "</p>");
|
||||
// -->
|
||||
</script>
|
||||
<p>Template->process() failed twice.<br>
|
||||
First error: $error<br>
|
||||
Second error: $error2</p>
|
||||
</tt>
|
||||
END
|
||||
|
||||
}
|
||||
|
||||
exit;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user