X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=includes%2Fspecialpage%2FSpecialPageFactory.php;h=4433ddb7d68107e40391429e768098c5ff0e6faa;hb=3a0c5393351e9e3a52146b5f5700e9c7c5b70a52;hp=81e2b7ef2c1cc25db28c0b23b6638e179e64dbb2;hpb=08e0ed2b70ba5986a96c701f84a7679c98a6f2fd;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specialpage/SpecialPageFactory.php b/includes/specialpage/SpecialPageFactory.php index 81e2b7ef2c..4433ddb7d6 100644 --- a/includes/specialpage/SpecialPageFactory.php +++ b/includes/specialpage/SpecialPageFactory.php @@ -234,7 +234,6 @@ class SpecialPageFactory { global $wgPageLanguageUseDB, $wgContentHandlerUseDB; if ( !is_array( self::$list ) ) { - self::$list = self::$coreList; if ( !$wgDisableInternalSearch ) { @@ -459,7 +458,7 @@ class SpecialPageFactory { $pages = []; foreach ( self::getPageList() as $name => $rec ) { $page = self::getPage( $name ); - if ( $page->isListed() && !$page->isRestricted() ) { + if ( $page && $page->isListed() && !$page->isRestricted() ) { $pages[$name] = $page; } } @@ -482,8 +481,8 @@ class SpecialPageFactory { } foreach ( self::getPageList() as $name => $rec ) { $page = self::getPage( $name ); - if ( - $page->isListed() + if ( $page + && $page->isListed() && $page->isRestricted() && $page->userCanExecute( $user ) ) { @@ -502,8 +501,8 @@ class SpecialPageFactory { * Returns a title object if the page is redirected, false if there was no such special * page, and true if it was successful. * - * @param Title $title - * @param IContextSource $context + * @param Title &$title + * @param IContextSource &$context * @param bool $including Bool output is being captured for use in {{special:whatever}} * @param LinkRenderer|null $linkRenderer (since 1.28) *