aboutsummaryrefslogtreecommitdiffstats
path: root/includes/Feed
diff options
context:
space:
mode:
authorUmherirrender <umherirrender_de.wp@web.de>2022-11-15 21:13:30 +0100
committerUmherirrender <umherirrender_de.wp@web.de>2022-11-15 21:13:37 +0100
commit2f289f3028bd61b1bc0a2f0791a615cc7ef61d75 (patch)
tree0ead9d4264321cdc3769fcf06b7def575a38bfe1 /includes/Feed
parent2e65f00a6c41f639c46d7e56d4bd94c7b3f1ac72 (diff)
downloadmediawikicore-2f289f3028bd61b1bc0a2f0791a615cc7ef61d75.tar.gz
mediawikicore-2f289f3028bd61b1bc0a2f0791a615cc7ef61d75.zip
Feed: Use DerivativeContext and not clone main RequestContext
cloning RequestContext also clones some internal states, produce bad error messages (08286fd) Bug: T323153 Change-Id: I5b4868d81dc3cd5b8744b932ab89e850169d04ab
Diffstat (limited to 'includes/Feed')
-rw-r--r--includes/Feed/FeedUtils.php12
1 files changed, 6 insertions, 6 deletions
diff --git a/includes/Feed/FeedUtils.php b/includes/Feed/FeedUtils.php
index 2e818f680673..e4b123730713 100644
--- a/includes/Feed/FeedUtils.php
+++ b/includes/Feed/FeedUtils.php
@@ -24,6 +24,7 @@
namespace MediaWiki\Feed;
use CommentStore;
+use DerivativeContext;
use Html;
use Linker;
use LogFormatter;
@@ -182,8 +183,7 @@ class FeedUtils {
if ( !$revRecord ) {
$diffText = false;
} else {
- $mainContext = RequestContext::getMain();
- $context = clone RequestContext::getMain();
+ $context = new DerivativeContext( RequestContext::getMain() );
$context->setTitle( $title );
$model = $revRecord->getSlot(
@@ -192,11 +192,11 @@ class FeedUtils {
)->getModel();
$contentHandler = $contentHandlerFactory->getContentHandler( $model );
$de = $contentHandler->createDifferenceEngine( $context, $oldid, $newid );
- $lang = $mainContext->getLanguage();
- $user = $mainContext->getUser();
+ $lang = $context->getLanguage();
+ $user = $context->getUser();
$diffText = $de->getDiff(
- $mainContext->msg( 'previousrevision' )->text(), // hack
- $mainContext->msg( 'revisionasof',
+ $context->msg( 'previousrevision' )->text(), // hack
+ $context->msg( 'revisionasof',
$lang->userTimeAndDate( $timestamp, $user ),
$lang->userDate( $timestamp, $user ),
$lang->userTime( $timestamp, $user ) )->text() );