Use WebRequest::getRawVal instead of WebRequest::getText
The UTF-8 normalization for the URL attributes `languagecode`, `uselang` and `setlang` are not needed. Change-Id: Ib204629fb15e2578bba09be4c40d0210eb81dd77
This commit is contained in:
@@ -59,7 +59,7 @@ class ApiULSSetLanguage extends ApiBase {
|
||||
$this->dieWithError( [ 'apierror-mustbeposted', $request->getText( 'action' ) ] );
|
||||
}
|
||||
|
||||
$languageCode = $request->getText( 'languagecode' );
|
||||
$languageCode = $request->getRawVal( 'languagecode', '' );
|
||||
if ( !$this->languageNameUtils->isSupportedLanguage( $languageCode ) ) {
|
||||
$this->dieWithError(
|
||||
[ 'apierror-invalidlang', $this->encodeParamName( 'languagecode' ) ]
|
||||
|
||||
@@ -313,7 +313,7 @@ class Hooks implements
|
||||
|
||||
if (
|
||||
// uselang can be used for temporary override of language preference
|
||||
$request->getText( 'uselang' ) ||
|
||||
$request->getRawVal( 'uselang' ) ||
|
||||
// Registered user: use preferences, only when safe to load - T267445
|
||||
( $user->isSafeToLoad() && $user->isRegistered() )
|
||||
) {
|
||||
@@ -524,7 +524,7 @@ class Hooks implements
|
||||
}
|
||||
|
||||
private function getSetLang( OutputPage $out ): ?string {
|
||||
$setLangCode = $out->getRequest()->getText( 'setlang' );
|
||||
$setLangCode = $out->getRequest()->getRawVal( 'setlang' );
|
||||
if ( $setLangCode && $this->languageNameUtils->isSupportedLanguage( $setLangCode ) ) {
|
||||
return $setLangCode;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user