* Followup r76127 and r83521 by adding parsertests and using caseFold
authorMark A. Hershberger <mah@users.mediawiki.org>
Tue, 8 Mar 2011 18:09:34 +0000 (18:09 +0000)
committerMark A. Hershberger <mah@users.mediawiki.org>
Tue, 8 Mar 2011 18:09:34 +0000 (18:09 +0000)
includes/Linker.php
tests/parser/parserTests.txt

index 32f1a57..5a499cd 100644 (file)
@@ -286,11 +286,14 @@ class Linker {
                }
 
                # Get a default title attribute.
+               global $wgLang;
                $known = in_array( 'known', $options );
                if ( $target->getPrefixedText() == '' ) {
                        # A link like [[#Foo]].  This used to mean an empty title
                        # attribute, but that's silly.  Just don't output a title.
-               } elseif ( $known && strtolower($linkText) !== strtolower($target->getPrefixedText() ) ) {
+               } elseif ( $known &&
+                       $wgLang->caseFold($linkText) !== $wgLang->caseFold($target->getPrefixedText() ) )
+               {
                        $defaults['title'] = $target->getPrefixedText();
                } elseif ( !$known ) {
                        $defaults['title'] = wfMsg( 'red-link-title', $target->getPrefixedText() );
index 8677bcf..32d5a3c 100644 (file)
@@ -8433,6 +8433,26 @@ Special characters in embedded file links (bug 27679)
 </p>
 !! end
 
+!! article
+A
+!! text
+A
+!! endarticle
+
+!! article
+!! text
+!! endarticle
+
+!! test
+Bug#542 Link text shouldn't be duplicated in title attributes
+!! input
+[[A]] [[a]] [[Ä]] [[ä]]
+!! result
+<p><a href="/wiki/A">A</a> <a href="/wiki/A">a</a> <a href="/wiki/%C3%84">Ä</a> <a href="/wiki/%C3%84">ä</a>
+</p>
+!! end
 
 TODO:
 more images