Index: includes/OutputPage.php =================================================================== --- includes/OutputPage.php (revision 21896) +++ includes/OutputPage.php (working copy) @@ -364,7 +364,7 @@ $this->enableClientCache( false ); } if ( $parserOutput->mHTMLtitle != "" ) { - $this->mPagetitle = $parserOutput->mHTMLtitle ; + $this->setPagetitle( $parserOutput->mHTMLtitle ); } if ( $parserOutput->mSubtitle != '' ) { $this->mSubtitle .= $parserOutput->mSubtitle ; Index: includes/CoreParserFunctions.php =================================================================== --- includes/CoreParserFunctions.php (revision 21896) +++ includes/CoreParserFunctions.php (working copy) @@ -98,10 +98,12 @@ } static function displaytitle( $parser, $param = '' ) { - $parserOptions = new ParserOptions; - $local_parser = clone $parser; - $t2 = $local_parser->parse ( $param, $parser->mTitle, $parserOptions, false ); - $parser->mOutput->mHTMLtitle = $t2->GetText(); + $parser->mOutput->mHTMLtitle = $param; + $title = Title::newFromText( $param ); + if( !is_null( $title ) && $parser->mTitle->equals( $title ) ) { + # No subtitle needed + return ''; + } # Add subtitle $t = $parser->mTitle->getPrefixedText();