specials: Remove invalid return from RedirectSpecialPage::execute

Follows-up f739a8f368, and 22c9aa5ec0.

The execute() method here should generally be void, with the
exception of includable special pages, where the return value
is a string of HTML.

This was likely left-over early iteration of commit f739a8f368,
which ended up returning from getRedirect() instead.

Change-Id: I68715910114e19a0421625e814fd8881068f6406
This commit is contained in:
Timo Tijhof 2019-04-06 01:34:56 +01:00
parent 950c1c3246
commit e22a3f516b
2 changed files with 6 additions and 6 deletions

View file

@ -89,6 +89,10 @@ because of Phabricator reports.
* ObjectFactory class, deprecated in 1.31, has been removed.
* HWLDFWordAccumudlator class, deprecated in 1.28, has been removed.
* XMPInfo, XMPReader and XMPValidate, deprecated in 1.32, have been removed.
* The RedirectSpecialPage::execute method could sometimes return a Title object.
This behavior was removed, and the method now matches the parent signature
(SpecialPage::execute) which is to return HTML string or void.
To obtain the destination title, use RedirectSpecialPage::getRedirect.
=== Deprecations in 1.34 ===
* The MWNamespace class is deprecated. Use MediaWikiServices::getNamespaceInfo.

View file

@ -35,23 +35,19 @@ abstract class RedirectSpecialPage extends UnlistedSpecialPage {
/**
* @param string|null $subpage
* @return Title|bool
*/
public function execute( $subpage ) {
$redirect = $this->getRedirect( $subpage );
$query = $this->getRedirectQuery();
// Redirect to a page title with possible query parameters
if ( $redirect instanceof Title ) {
// Redirect to a page title with possible query parameters
$url = $redirect->getFullUrlForRedirect( $query );
$this->getOutput()->redirect( $url );
return $redirect;
} elseif ( $redirect === true ) {
// Redirect to index.php with query parameters
$url = wfAppendQuery( wfScript( 'index' ), $query );
$this->getOutput()->redirect( $url );
return $redirect;
} else {
$this->showNoRedirectPage();
}