Add missing Title::newFromLinkTarget to api module compare
authorUmherirrender <umherirrender_de.wp@web.de>
Thu, 6 Jun 2019 20:10:57 +0000 (22:10 +0200)
committerUmherirrender <umherirrender_de.wp@web.de>
Thu, 6 Jun 2019 20:10:57 +0000 (22:10 +0200)
The function getArticleID is not implemented by a LinkTarget as returned
by getPageAsLinkTarget, so this needs a wrapper to create a Title
object.
ApiQueryBase::addTitleInfo also needs a Title object to call
getPrefixedText

Change-Id: I8d1b4a77da8b3ce4eaf9e7e5100a3243669f2d3e

includes/api/ApiComparePages.php

index 1eb5e8d..e096915 100644 (file)
@@ -562,7 +562,7 @@ class ApiComparePages extends ApiBase {
         */
        private function setVals( &$vals, $prefix, $rev ) {
                if ( $rev ) {
-                       $title = $rev->getPageAsLinkTarget();
+                       $title = Title::newFromLinkTarget( $rev->getPageAsLinkTarget() );
                        if ( isset( $this->props['ids'] ) ) {
                                $vals["{$prefix}id"] = $title->getArticleID();
                                $vals["{$prefix}revid"] = $rev->getId();
@@ -603,7 +603,7 @@ class ApiComparePages extends ApiBase {
                                                $vals["{$prefix}comment"] = $comment->text;
                                        }
                                        $vals["{$prefix}parsedcomment"] = Linker::formatComment(
-                                               $comment->text, Title::newFromLinkTarget( $title )
+                                               $comment->text, $title
                                        );
                                }
                        }