@@ -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 ->mTemplates ;
222+ $ saveTemplates = $ parserOutput ->getLinkList ( ParserOutputLinkTypes:: TEMPLATE ) ;
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 ->mImages ;
237+ $ saveImages = $ parserOutput ->getLinkList ( ParserOutputLinkTypes:: MEDIA ) ;
238238 }
239239
240240 $ parsedDPL = $ parser ->recursiveTagParse ( $ text );
@@ -619,39 +619,37 @@ public static function endEliminate( $parser, &$text ) {
619619 // called during the final output phase; removes links created by DPL
620620 if ( self ::$ createdLinks ) {
621621 if ( array_key_exists ( 0 , self ::$ createdLinks ) ) {
622- $ parserLinks = $ parser ->getOutput ()->mLinks ;
623- foreach ( $ parserLinks as $ nsp => $ _ ) {
622+ $ parserLinks = $ parser ->getOutput ()->getLinkList ( ParserOutputLinkTypes:: LOCAL ) ;
623+ foreach ( $ parserLinks as $ nsp => $ link ) {
624624 if ( !array_key_exists ( $ nsp , self ::$ createdLinks [0 ] ) ) {
625625 continue ;
626626 }
627627
628- $ mLinks = $ parser ->getOutput ()->mLinks ;
629- $ mLinks [$ nsp ] = array_diff_assoc (
628+ $ parser ->getOutput ()->mLinks [$ nsp ] = array_diff_assoc (
630629 $ link ,
631630 self ::$ createdLinks [0 ][$ nsp ]
632631 );
633632
634633 if ( count ( $ link ) == 0 ) {
635- unset( $ mLinks [$ nsp ] );
634+ unset( $ parser -> getOutput ()-> mLinks [$ nsp ] );
636635 }
637636 }
638637 }
639638
640639 if ( array_key_exists ( 1 , self ::$ createdLinks ) ) {
641- $ parserTemplates = $ parser ->getOutput ()->mTemplates ;
642- foreach ( $ parserTemplates as $ nsp => $ _ ) {
640+ $ parserTemplates = $ parser ->getOutput ()->getLinkList ( ParserOutputLinkTypes:: TEMPLATE ) ;
641+ foreach ( $ parserTemplates as $ nsp => $ tpl ) {
643642 if ( !array_key_exists ( $ nsp , self ::$ createdLinks [1 ] ) ) {
644643 continue ;
645644 }
646645
647- $ mTemplates = $ parser ->getOutput ()->mTemplates ;
648- $ mTemplates [$ nsp ] = array_diff_assoc (
646+ $ parser ->getOutput ()->mTemplates [$ nsp ] = array_diff_assoc (
649647 $ tpl ,
650648 self ::$ createdLinks [1 ][$ nsp ]
651649 );
652650
653651 if ( count ( $ tpl ) == 0 ) {
654- unset( $ mTemplates [$ nsp ] );
652+ unset( $ parser -> getOutput ()-> mTemplates [$ nsp ] );
655653 }
656654 }
657655 }
@@ -669,7 +667,8 @@ public static function endEliminate( $parser, &$text ) {
669667 }
670668
671669 if ( array_key_exists ( 3 , self ::$ createdLinks ) ) {
672- $ parser ->getOutput ()->mImages = array_diff_assoc ( $ parser ->getOutput ()->mImages , self ::$ createdLinks [3 ] );
670+ $ parserMedia = $ parser ->getOutput ()->getLinkList ( ParserOutputLinkTypes::MEDIA );
671+ $ parser ->getOutput ()->mImages = array_diff_assoc ( $ parserMedia , self ::$ createdLinks [3 ] );
673672 }
674673 }
675674 }
0 commit comments