diff options
Diffstat (limited to 'rt/lib/RT.pm')
| -rw-r--r-- | rt/lib/RT.pm | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/rt/lib/RT.pm b/rt/lib/RT.pm index 4a20f9b43..84c4ad183 100644 --- a/rt/lib/RT.pm +++ b/rt/lib/RT.pm @@ -57,7 +57,7 @@ use Cwd (); use vars qw($Config $System $SystemUser $Nobody $Handle $Logger $_INSTALL_MODE); -our $VERSION = '3.8.11'; +our $VERSION = '3.8.13'; @@ -688,11 +688,21 @@ sub InitPlugins { sub InstallMode { my $self = shift; if (@_) { - $_INSTALL_MODE = shift; - if($_INSTALL_MODE) { - require RT::CurrentUser; - $SystemUser = RT::CurrentUser->new(); - } + my ($integrity, $state, $msg) = RT::Handle->CheckIntegrity; + if ($_[0] and $integrity) { + # Trying to turn install mode on but we have a good DB! + require Carp; + $RT::Logger->error( + Carp::longmess("Something tried to turn on InstallMode but we have DB integrity!") + ); + } + else { + $_INSTALL_MODE = shift; + if($_INSTALL_MODE) { + require RT::CurrentUser; + $SystemUser = RT::CurrentUser->new(); + } + } } return $_INSTALL_MODE; } |
