Skip to content

Commit 99a238f

Browse files
Merge pull request #15 from Wikia/PLATFORM-10852
PLATFORM-10852 Fix type mismatch between what is returned by `getLinkList` (list of arrays that contains non-serializable TitleValue) and what is expected by ParserOutput.
2 parents 9418bd5 + 4506c37 commit 99a238f

File tree

2 files changed

+9
-12
lines changed

2 files changed

+9
-12
lines changed

includes/Hooks.php

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ private static function executeTag( $input, array $args, Parser $parser, PPFrame
219219

220220
// we can remove the templates by save/restore
221221
if ( $reset['templates'] ?? false ) {
222-
$saveTemplates = $parserOutput->getLinkList( ParserOutputLinkTypes::TEMPLATE );
222+
$saveTemplates = $parserOutput->mTemplates;
223223
}
224224

225225
// we can remove the categories by save/restore
@@ -234,7 +234,7 @@ private static function executeTag( $input, array $args, Parser $parser, PPFrame
234234

235235
// we can remove the images by save/restore
236236
if ( $reset['images'] ?? false ) {
237-
$saveImages = $parserOutput->getLinkList( ParserOutputLinkTypes::MEDIA );
237+
$saveImages = $parserOutput->mImages;
238238
}
239239

240240
$parsedDPL = $parser->recursiveTagParse( $text );
@@ -621,14 +621,13 @@ public static function endEliminate( $parser, &$text ) {
621621
// called during the final output phase; removes links created by DPL
622622
if ( self::$createdLinks ) {
623623
if ( array_key_exists( 0, self::$createdLinks ) ) {
624-
$parserLinks = $parser->getOutput()->getLinkList( ParserOutputLinkTypes::LOCAL );
624+
$parserLinks = $parser->getOutput()->mLinks;
625625
foreach ( $parserLinks as $nsp => $link ) {
626626
if ( !array_key_exists( $nsp, self::$createdLinks[0] ) ) {
627627
continue;
628628
}
629629

630-
// @phan-suppress-next-line PhanDeprecatedFunction
631-
$mLinks = $parser->getOutput()->getLinks();
630+
$mLinks = $parser->getOutput()->mLinks;
632631
$mLinks[$nsp] = array_diff_assoc(
633632
$link,
634633
self::$createdLinks[0][$nsp]
@@ -641,14 +640,13 @@ public static function endEliminate( $parser, &$text ) {
641640
}
642641

643642
if ( array_key_exists( 1, self::$createdLinks ) ) {
644-
$parserTemplates = $parser->getOutput()->getLinkList( ParserOutputLinkTypes::TEMPLATE );
643+
$parserTemplates = $parser->getOutput()->mTemplates;
645644
foreach ( $parserTemplates as $nsp => $tpl ) {
646645
if ( !array_key_exists( $nsp, self::$createdLinks[1] ) ) {
647646
continue;
648647
}
649648

650-
// @phan-suppress-next-line PhanDeprecatedFunction
651-
$mTemplates = $parser->getOutput()->getTemplates();
649+
$mTemplates = $parser->getOutput()->mTemplates;
652650
$mTemplates[$nsp] = array_diff_assoc(
653651
$tpl,
654652
self::$createdLinks[1][$nsp]
@@ -673,8 +671,7 @@ public static function endEliminate( $parser, &$text ) {
673671
}
674672

675673
if ( array_key_exists( 3, self::$createdLinks ) ) {
676-
$parserMedia = $parser->getOutput()->getLinkList( ParserOutputLinkTypes::MEDIA );
677-
$parser->getOutput()->mImages = array_diff_assoc( $parserMedia, self::$createdLinks[3] );
674+
$parser->getOutput()->mImages = array_diff_assoc( $parser->getOutput()->mImages, self::$createdLinks[3] );
678675
}
679676
}
680677
}

includes/Parse.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1105,15 +1105,15 @@ private function triggerEndResets( $output, &$reset, &$eliminate, $isParserTag,
11051105
// statement itself uses one of these links they will be thrown away!
11061106
Hooks::$createdLinks[0] = [];
11071107

1108-
foreach ( $parserOutput->getLinkList( ParserOutputLinkTypes::LOCAL ) as $nsp => $link ) {
1108+
foreach ( $parserOutput->mLinks as $nsp => $link ) {
11091109
Hooks::$createdLinks[0][$nsp] = $link;
11101110
}
11111111
}
11121112

11131113
if ( $parserOutput && isset( $eliminate['templates'] ) && $eliminate['templates'] ) {
11141114
Hooks::$createdLinks[1] = [];
11151115

1116-
foreach ( $parserOutput->getLinkList( ParserOutputLinkTypes::TEMPLATE ) as $nsp => $tpl ) {
1116+
foreach ( $parserOutput->mTemplates as $nsp => $tpl ) {
11171117
Hooks::$createdLinks[1][$nsp] = $tpl;
11181118
}
11191119
}

0 commit comments

Comments
 (0)