Legoktm has uploaded a new change for review.
https://gerrit.wikimedia.org/r/284391
Change subject: Specially handle Title objects in Title::newFromLinkTarget()
......................................................................
Specially handle Title objects in Title::newFromLinkTarget()
Every single caller of Title::newFromLinkTarget() already special cases
when the LinkTarget object is already a Title, so move that logic into
one function.
Change-Id: Iba5432ae01c87850e5b34893092427c5b1629188
---
M includes/Title.php
M includes/WatchedItem.php
M includes/WatchedItemStore.php
M includes/title/MediaWikiPageLinkRenderer.php
4 files changed, 9 insertions(+), 16 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core
refs/changes/91/284391/1
diff --git a/includes/Title.php b/includes/Title.php
index 95588a2..3fd4631 100644
--- a/includes/Title.php
+++ b/includes/Title.php
@@ -248,6 +248,10 @@
* @return Title
*/
public static function newFromLinkTarget( LinkTarget $linkTarget ) {
+ if ( $linkTarget instanceof Title ) {
+ // Special case if it's already a Title object
+ return $linkTarget;
+ }
return self::makeTitle(
$linkTarget->getNamespace(),
$linkTarget->getText(),
diff --git a/includes/WatchedItem.php b/includes/WatchedItem.php
index 0495536..4dbe0f6 100644
--- a/includes/WatchedItem.php
+++ b/includes/WatchedItem.php
@@ -140,11 +140,7 @@
*/
public function getTitle() {
if ( !$this->title ) {
- if ( $this->linkTarget instanceof Title ) {
- $this->title = $this->linkTarget;
- } else {
- $this->title = Title::newFromLinkTarget(
$this->linkTarget );
- }
+ $this->title = Title::newFromLinkTarget(
$this->linkTarget );
}
return $this->title;
}
diff --git a/includes/WatchedItemStore.php b/includes/WatchedItemStore.php
index 8ae7932..5e99f8e 100644
--- a/includes/WatchedItemStore.php
+++ b/includes/WatchedItemStore.php
@@ -905,12 +905,8 @@
* @param LinkTarget $newTarget
*/
public function duplicateAllAssociatedEntries( LinkTarget $oldTarget,
LinkTarget $newTarget ) {
- if ( !$oldTarget instanceof Title ) {
- $oldTarget = Title::newFromLinkTarget( $oldTarget );
- }
- if ( !$newTarget instanceof Title ) {
- $newTarget = Title::newFromLinkTarget( $newTarget );
- }
+ $oldTarget = Title::newFromLinkTarget( $oldTarget );
+ $newTarget = Title::newFromLinkTarget( $newTarget );
$this->duplicateEntry( $oldTarget->getSubjectPage(),
$newTarget->getSubjectPage() );
$this->duplicateEntry( $oldTarget->getTalkPage(),
$newTarget->getTalkPage() );
diff --git a/includes/title/MediaWikiPageLinkRenderer.php
b/includes/title/MediaWikiPageLinkRenderer.php
index 302c9e8..b458578 100644
--- a/includes/title/MediaWikiPageLinkRenderer.php
+++ b/includes/title/MediaWikiPageLinkRenderer.php
@@ -106,11 +106,8 @@
// TODO: move the logic implemented by Linker here,
// using $this->formatter and $this->baseUrl, and
// re-implement Linker to use a HtmlPageLinkRenderer.
- if ( $linkTarget instanceof Title ) {
- $title = $linkTarget;
- } else {
- $title = Title::newFromLinkTarget( $linkTarget );
- }
+
+ $title = Title::newFromLinkTarget( $linkTarget );
$link = Linker::link( $title, htmlspecialchars( $text ) );
return $link;
--
To view, visit https://gerrit.wikimedia.org/r/284391
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iba5432ae01c87850e5b34893092427c5b1629188
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Legoktm <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits