Defer "language" preference update
* This avoids DBPerformance log notices on GET requests Bug: T92357 Change-Id: I9e4bc3fab4cfe36ca820abe8eb46594adac66dc4
This commit is contained in:
@@ -206,10 +206,13 @@ class UniversalLanguageSelectorHooks {
|
|||||||
if ( !$user->isAnon() ) {
|
if ( !$user->isAnon() ) {
|
||||||
// Language change
|
// Language change
|
||||||
if ( Language::isSupportedLanguage( $languageToSave ) ) {
|
if ( Language::isSupportedLanguage( $languageToSave ) ) {
|
||||||
$user->setOption( 'language', $languageToSave );
|
|
||||||
$user->saveSettings();
|
|
||||||
// Apply immediately
|
// Apply immediately
|
||||||
|
$user->setOption( 'language', $languageToSave );
|
||||||
$code = $languageToSave;
|
$code = $languageToSave;
|
||||||
|
// Promise to sync the DB on post-send
|
||||||
|
DeferredUpdates::addCallableUpdate( function() use ( $user ) {
|
||||||
|
$user->saveSettings();
|
||||||
|
} );
|
||||||
}
|
}
|
||||||
|
|
||||||
// Otherwise just use what is stored in preferences
|
// Otherwise just use what is stored in preferences
|
||||||
|
|||||||
Reference in New Issue
Block a user