use Rose::DB::Object;
use File::Basename;
+# Trailing new line is added so that Perl will not add the line
+# number 'die' was called in.
+use constant END_OF_REQUEST => "END-OF-REQUEST\n";
+
sub pre_request_checks {
show_error('login/auth_db_unreachable') unless $::auth->session_tables_present;
$::auth->expire_sessions;
print $::form->parse_html_template($template);
$::lxdebug->leave_sub;
- exit;
+ ::end_of_request();
}
sub pre_startup_setup {
1;
} or do {
- $::form->{label_error} = $::cgi->pre($EVAL_ERROR);
- show_error('generic/error');
+ if ($EVAL_ERROR ne END_OF_REQUEST) {
+ $::form->{label_error} = $::cgi->pre($EVAL_ERROR);
+ eval { show_error('generic/error') };
+ }
};
# cleanup
}
}
+package main;
+
+use strict;
+
+sub end_of_request {
+ die SL::Dispatcher->END_OF_REQUEST;
+}
+
1;