Revert r45387 "Add special case handling of the XHTML character entity "'" to...
authorBrion Vibber <brion@users.mediawiki.org>
Wed, 7 Jan 2009 02:31:30 +0000 (02:31 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Wed, 7 Jan 2009 02:31:30 +0000 (02:31 +0000)
It might seem cleaner to just add the appropriate entry to $wgHtmlEntityAliases, but this would break decodeEntity() as currently written. Explicitly note this in the comments."

This doesn't make any sense. Is there any reason not to just add apos to $wgHtmlEntities if it's valid XHTML?

RELEASE-NOTES
includes/Sanitizer.php

index 1ea5d5d..3461b79 100644 (file)
@@ -470,8 +470,6 @@ The following extensions are migrated into MediaWiki 1.14:
   local URLs
 * (bug 16376) Mention in deleteBatch.php and moveBatch.php maintenance scripts
   that STDIN can be used for page list
-* Sanitizer::decodeCharReferences() now decodes the XHTML "&apos;" character
-  entity (loosely related to bug 14365)
 * (bug 16560) Special:Random returns a page from ContentNamespaces, and no
   longer from NS_MAIN
 
index a433ce0..5d58b03 100644 (file)
@@ -59,9 +59,6 @@ define( 'MW_ATTRIBS_REGEX',
 /**
  * List of all named character entities defined in HTML 4.01
  * http://www.w3.org/TR/html4/sgml/entities.html
- * This list does *not* include &apos;, which is part of XHTML
- * 1.0 but not HTML 4.01.  It is handled as a special case in
- * the code.
  * @private
  */
 global $wgHtmlEntities;
@@ -321,7 +318,6 @@ $wgHtmlEntities = array(
 
 /**
  * Character entity aliases accepted by MediaWiki
- * XXX: decodeEntity() assumes that all values in this array are valid keys to $wgHtmlEntities
  */
 global $wgHtmlEntityAliases;
 $wgHtmlEntityAliases = array(
@@ -951,7 +947,7 @@ class Sanitizer {
         * encoded text for an attribute value.
         *
         * See http://www.w3.org/TR/REC-xml/#AVNormalize for background,
-        * but note that we are not returning the value, but are returning
+        * but note that we're not returning the value, but are returning
         * XML source fragments that will be slapped into output.
         *
         * @param string $text
@@ -1029,8 +1025,6 @@ class Sanitizer {
                        return "&{$wgHtmlEntityAliases[$name]};";
                } elseif( isset( $wgHtmlEntities[$name] ) ) {
                        return "&$name;";
-               } elseif( $name == 'apos' ) {
-                       return "&#39;";  // "&apos;" is valid in XHTML, but not in HTML4
                } else {
                        return "&amp;$name;";
                }
@@ -1132,8 +1126,6 @@ class Sanitizer {
                }
                if( isset( $wgHtmlEntities[$name] ) ) {
                        return codepointToUtf8( $wgHtmlEntities[$name] );
-               } elseif( $name == 'apos' ) {
-                       return "'";  // "&apos;" is not in $wgHtmlEntities, but it's still valid XHTML
                } else {
                        return "&$name;";
                }