Follow-up r81524: fix fatal when modules are deregistered
authorHappy-melon <happy-melon@users.mediawiki.org>
Sat, 19 Mar 2011 21:19:50 +0000 (21:19 +0000)
committerHappy-melon <happy-melon@users.mediawiki.org>
Sat, 19 Mar 2011 21:19:50 +0000 (21:19 +0000)
includes/OutputPage.php

index 07700bb..f57695b 100644 (file)
@@ -361,7 +361,8 @@ class OutputPage {
        }
 
        /**
-        * Filter an array of modules to remove insufficiently trustworthy members
+        * Filter an array of modules to remove insufficiently trustworthy members, and modules
+        * which are no longer registered (eg a page is cached before an extension is disabled)
         * @param $modules Array
         * @return Array
         */
@@ -370,7 +371,9 @@ class OutputPage {
                $filteredModules = array();
                foreach( $modules as $val ){
                        $module = $resourceLoader->getModule( $val );
-                       if( $module->getOrigin() <= $this->getAllowedModules( $type ) ) {
+                       if( $module instanceof ResourceLoaderModule
+                               && $module->getOrigin() <= $this->getAllowedModules( $type ) )
+                       {
                                $filteredModules[] = $val;
                        }
                }