WordPress.org

Make WordPress Core

Ticket #16980: 16980.diff

File 16980.diff, 1.4 KB (added by solarissmoke, 3 years ago)
  • wp-includes/class-IXR.php

     
    191191    var $_value; 
    192192    var $_currentTag; 
    193193    var $_currentTagContents; 
     194    var $_valueHasType = false; 
    194195    // The XML parser 
    195196    var $_parser; 
    196197 
     
    259260                $this->_arraystructstypes[] = 'struct'; 
    260261                $this->_arraystructs[] = array(); 
    261262                break; 
     263            case 'value': 
     264                $this->_valueHasType = false; 
    262265        } 
    263266    } 
    264267 
     
    290293                break; 
    291294            case 'value': 
    292295                // "If no type is indicated, the type is string." 
    293                 if (trim($this->_currentTagContents) != '') { 
    294                     $value = (string)$this->_currentTagContents; 
     296                if ( !$this->_valueHasType ) { 
     297                    $value = trim( $this->_currentTagContents ); 
    295298                    $valueFlag = true; 
    296299                } 
    297300                break; 
     
    322325        } 
    323326 
    324327        if ($valueFlag) { 
     328            $this->_valueHasType = true; 
     329                                 
    325330            if (count($this->_arraystructs) > 0) { 
    326331                // Add value to struct or array 
    327332                if ($this->_arraystructstypes[count($this->_arraystructstypes)-1] == 'struct') {