Reverting r82307 (bug 27465) as initial step to recommitting a cleaner fix.
authorBrion Vibber <brion@users.mediawiki.org>
Wed, 25 May 2011 23:57:44 +0000 (23:57 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Wed, 25 May 2011 23:57:44 +0000 (23:57 +0000)
includes/media/SVGMetadataExtractor.php

index 8f11f93..3288263 100644 (file)
@@ -101,7 +101,7 @@ class SVGReader {
                        $keepReading = $this->reader->read();
                }
 
-               if ( !$this->qualifiedNameEquals( $this->reader->name, 'svg', 'svg' ) ) {
+               if ( $this->reader->name != 'svg' ) {
                        throw new MWException( "Expected <svg> tag, got ".
                                $this->reader->name );
                }
@@ -116,13 +116,13 @@ class SVGReader {
 
                        $this->debug( "$tag" );
 
-                       if ( $this->qualifiedNameEquals( $tag, 'svg', 'svg' ) && $type == XmlReader::END_ELEMENT && $this->reader->depth <= $exitDepth ) {
+                       if ( $tag == 'svg' && $type == XmlReader::END_ELEMENT && $this->reader->depth <= $exitDepth ) {
                                break;
-                       } elseif ( $this->qualifiedNameEquals( $tag, 'svg', 'title' ) ) {
+                       } elseif ( $tag == 'title' ) {
                                $this->readField( $tag, 'title' );
-                       } elseif ( $this->qualifiedNameEquals( $tag, 'svg', 'desc' )  ) {
+                       } elseif ( $tag == 'desc' ) {
                                $this->readField( $tag, 'description' );
-                       } elseif ( $this->qualifiedNameEquals( $tag, 'svg', 'metadata' ) && $type == XmlReader::ELEMENT ) {
+                       } elseif ( $tag == 'metadata' && $type == XmlReader::ELEMENT ) {
                                $this->readXml( $tag, 'metadata' );
                        } elseif ( $tag !== '#text' ) {
                                $this->debug( "Unhandled top-level XML tag $tag" );
@@ -201,15 +201,10 @@ class SVGReader {
                        } elseif ( $this->reader->nodeType == XmlReader::ELEMENT ) {
                                switch( $this->reader->name ) {
                                        case 'animate':
-                                       case 'svg:animate':
                                        case 'set':
-                                       case 'svg:set':
                                        case 'animateMotion':
-                                       case 'svg:animateMotion':
                                        case 'animateColor':
-                                       case 'svg:animateColor':
                                        case 'animateTransform':
-                                       case 'svg:animateTransform':
                                                $this->debug( "HOUSTON WE HAVE ANIMATION" );
                                                $this->metadata['animated'] = true;
                                                break;
@@ -318,22 +313,4 @@ class SVGReader {
                        return floatval( $length );
                }
        }
-
-       /**
-        * XML namespace check
-        *
-        * Check if a read node name matches the expected nodeName
-        * @param $qualifiedName as read by XMLReader
-        * @param $prefix the namespace prefix that you expect for this element, defaults to svg namespace
-        * @param $localName the localName part of the element that you want to match
-        *
-        * @return boolean
-        */
-       private function qualifiedNameEquals( $qualifiedName, $prefix="svg", $localName ) {
-               if( ($qualifiedName == $localName && $prefix == "svg" ) ||
-                    $qualifiedName == ($prefix . ":" . $localName) ) {
-                       return true;
-               }
-               return false;
-       }
 }