}
/**
- * 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
*/
$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;
}
}