From 55312f690a61c8078c23028fc26b5afb6c4149de Mon Sep 17 00:00:00 2001 From: Max Kanat-Alexander Date: Wed, 10 Mar 2010 06:43:24 -0800 Subject: Bug 550966: Syntax errors in extensions' Extension.pm were causing "deep recursion on subroutine" errors. r=mkanat, a=mkanat (module owner) --- Bugzilla/Install/Util.pm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'Bugzilla/Install/Util.pm') diff --git a/Bugzilla/Install/Util.pm b/Bugzilla/Install/Util.pm index 89cca2dfa..233e08e19 100644 --- a/Bugzilla/Install/Util.pm +++ b/Bugzilla/Install/Util.pm @@ -153,7 +153,13 @@ sub extension_requirement_packages { # Bugzilla::Extension->load_all (because stuff has already been loaded). # (This matters because almost every page calls Bugzilla->feature, which # calls OPTIONAL_MODULES, which calls this method.) - if (eval { Bugzilla->extensions }) { + # + # We check if Bugzilla.pm is already loaded, instead of doing a "require", + # because we *do* want the code lower down to run during the Requirements + # phase of checksetup.pl, instead of Bugzilla->extensions, and Bugzilla.pm + # actually *can* be loaded during the Requirements phase if all the + # requirements have already been installed. + if ($INC{'Bugzilla.pm'}) { return Bugzilla->extensions; } my $packages = _cache()->{extension_requirement_packages}; -- cgit v1.2.3-24-g4f1b