Brian Wolff has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/101493


Change subject: Make SVG language selector use default lang better
......................................................................

Make SVG language selector use default lang better

Also have ImagePage check that the given language is actually
valid, before trying to transform with that language.

Be great if this could be backported to wmf7 before that
gets deployed to commons.

Change-Id: I62b8035b70f5cb3388f4c2a844f3bc1c7c92d01e
---
M includes/ImagePage.php
M includes/media/SVG.php
2 files changed, 8 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/93/101493/1

diff --git a/includes/ImagePage.php b/includes/ImagePage.php
index c73d72c..997a948 100644
--- a/includes/ImagePage.php
+++ b/includes/ImagePage.php
@@ -316,7 +316,12 @@
 
                        $renderLang = $request->getVal( 'lang' );
                        if ( !is_null( $renderLang ) ) {
-                               $params['lang'] = $renderLang;
+                               $handler = $this->displayImg->getHandler();
+                               if ( $handler && $handler->validateParam( 
'lang', $renderLang ) ) {
+                                       $params['lang'] = $renderLang;
+                               } else {
+                                       $renderLang = null;
+                               }
                        }
 
                        $width_orig = $this->displayImg->getWidth( $page );
@@ -1002,7 +1007,7 @@
                if ( !$haveDefaultLang ) {
                        // Its hard to know if the content is really in the 
default language, or
                        // if its just unmarked content that could be in any 
language.
-                       $opts = Xml::option( wfMessage( 'img-lang-default' 
)->text(), '', $defaultLang === $curLang ) . $opts;
+                       $opts = Xml::option( wfMessage( 'img-lang-default' 
)->text(), $defaultLang, $defaultLang === $curLang ) . $opts;
                }
                if ( !$haveCurrentLang && $defaultLang !== $curLang ) {
                        $name = Language::fetchLanguageName( $curLang, 
$this->getContext()->getLanguage()->getCode() );
diff --git a/includes/media/SVG.php b/includes/media/SVG.php
index ecc4ef8..ce7fcbb 100644
--- a/includes/media/SVG.php
+++ b/includes/media/SVG.php
@@ -432,7 +432,7 @@
                        return ( $value > 0 );
                } elseif ( $name == 'lang' ) {
                        // Validate $code
-                       if ( !Language::isValidBuiltinCode( $value ) ) {
+                       if ( $value === '' || !Language::isValidBuiltinCode( 
$value ) ) {
                                wfDebug( "Invalid user language code\n" );
 
                                return false;

-- 
To view, visit https://gerrit.wikimedia.org/r/101493
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I62b8035b70f5cb3388f4c2a844f3bc1c7c92d01e
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Brian Wolff <bawolff...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to