]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 550966: Syntax errors in extensions' Extension.pm were causing "deep
authorMax Kanat-Alexander <mkanat@bugzilla.org>
Wed, 10 Mar 2010 14:44:28 +0000 (06:44 -0800)
committerMax Kanat-Alexander <mkanat@bugzilla.org>
Wed, 10 Mar 2010 14:44:28 +0000 (06:44 -0800)
recursion on subroutine" errors.
r=mkanat, a=mkanat (module owner)

Bugzilla/Install/Util.pm

index 99aacb3e784eb2787202245a1a8e9ec820c9a546..55bbd455c82b7c7b107c762d6d80bb0edb900633 100644 (file)
@@ -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};