From: Tim Starling Date: Mon, 25 Jan 2016 03:44:36 +0000 (+1100) Subject: Introduce ParserOutput::getRawText() X-Git-Tag: 1.31.0-rc.0~8226^2 X-Git-Url: http://git.cyclocoop.org/%7B%24www_url%7Dadmin/compta/categories/modifier.php?a=commitdiff_plain;h=914f6a62a66217b3e4304fca80e64ae1baa42d04;p=lhc%2Fweb%2Fwiklou.git Introduce ParserOutput::getRawText() Avoid polluting the parser cache with skin-dependent output from Skin::doEditSectionLink() by introducing getRawText(), which provides access to the uncooked text. Use this in WikitextContent::fillParserOutput() which is the primary offender judging by the debug logs (see referenced bug). Bug: T124356 Change-Id: Ia9e1e4a6dc3a26f88eeebc64eed023ff20c53d58 --- diff --git a/includes/content/WikitextContent.php b/includes/content/WikitextContent.php index 8beae39378..89e9356052 100644 --- a/includes/content/WikitextContent.php +++ b/includes/content/WikitextContent.php @@ -338,7 +338,7 @@ class WikitextContent extends TextContent { $chain = $this->getRedirectChain(); $output->setText( Article::getRedirectHeaderHtml( $title->getPageLanguage(), $chain, false ) . - $output->getText() + $output->getRawText() ); $output->addModuleStyles( 'mediawiki.action.view.redirectPage' ); } diff --git a/includes/parser/ParserOutput.php b/includes/parser/ParserOutput.php index 72668bf68f..656e580aea 100644 --- a/includes/parser/ParserOutput.php +++ b/includes/parser/ParserOutput.php @@ -220,6 +220,17 @@ class ParserOutput extends CacheTime { $this->mTitleText = $titletext; } + /** + * Get the cacheable text with markers still in it. The + * return value is suitable for writing back via setText() but is not valid + * for display to the user. + * + * @since 1.27 + */ + public function getRawText() { + return $this->mText; + } + public function getText() { $text = $this->mText; if ( $this->mEditSectionTokens ) {