Index: SpecialNewpages.php =================================================================== --- SpecialNewpages.php (revision 69534) +++ SpecialNewpages.php (working copy) @@ -296,8 +296,12 @@ $classes[] = 'not-patrolled'; # Tags, if any. - list( $tagDisplay, $newClasses ) = ChangeTags::formatSummaryRow( $result->ts_tags, 'newpages' ); - $classes = array_merge( $classes, $newClasses ); + if ( !$this->including() ) { + list( $tagDisplay, $newClasses ) = ChangeTags::formatSummaryRow( $result->ts_tags, 'newpages' ); + $classes = array_merge( $classes, $newClasses ); + } else { + $tagDisplay = ''; + } $css = count($classes) ? ' class="'.implode( " ", $classes).'"' : ''; Index: SpecialRecentchangeslinked.php =================================================================== --- SpecialRecentchangeslinked.php (revision 69534) +++ SpecialRecentchangeslinked.php (working copy) @@ -104,10 +104,11 @@ $join_conds['page'] = array('LEFT JOIN', 'rc_cur_id=page_id'); $select[] = 'page_latest'; } + if ( !$this->including() ) { // bug 23293 + ChangeTags::modifyDisplayQuery( $tables, $select, $conds, $join_conds, + $query_options, $opts['tagfilter'] ); + } - ChangeTags::modifyDisplayQuery( $tables, $select, $conds, $join_conds, - $query_options, $opts['tagfilter'] ); - // XXX: parent class does this, should we too? // wfRunHooks('SpecialRecentChangesQuery', array( &$conds, &$tables, &$join_conds, $opts ) ); Index: SpecialRecentchanges.php =================================================================== --- SpecialRecentchanges.php (revision 69534) +++ SpecialRecentchanges.php (working copy) @@ -267,7 +267,6 @@ if( $forcebot ) $conds['rc_bot'] = 1; if( $hideLoggedInUsers ) $conds[] = 'rc_user = 0'; if( $hideAnonymousUsers ) $conds[] = 'rc_user != 0'; - if( $opts['hidemyself'] ) { if( $wgUser->getId() ) { $conds[] = 'rc_user != ' . $dbr->addQuotes( $wgUser->getId() ); @@ -318,12 +317,15 @@ $tables[] = 'page'; $join_conds['page'] = array('LEFT JOIN', 'rc_cur_id=page_id'); } - // Tag stuff. - $fields = array(); - // Fields are * in this case, so let the function modify an empty array to keep it happy. - ChangeTags::modifyDisplayQuery( - $tables, $fields, $conds, $join_conds, $query_options, $opts['tagfilter'] - ); + if ( !$this->including() ) { + // Tag stuff. + // Doesn't work when transcluding. See bug 23293 + $fields = array(); + // Fields are * in this case, so let the function modify an empty array to keep it happy. + ChangeTags::modifyDisplayQuery( + $tables, $fields, $conds, $join_conds, $query_options, $opts['tagfilter'] + ); + } if ( !wfRunHooks( 'SpecialRecentChangesQuery', array( &$conds, &$tables, &$join_conds, $opts, &$query_options ) ) ) return false;