Make WordPress Core

Changeset 11658


Ignore:
Timestamp:
06/27/2009 10:13:01 PM (17 years ago)
Author:
ryan
Message:

Fix compat with zend.ze1_compatibility_mode. Props gsnedders. fixes #10222 for 2.8.1

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.8/wp-includes/class-simplepie.php

    r11600 r11658  
    752752        function __destruct()
    753753        {
    754                 if (version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled())
     754                if ((version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled()) && !ini_get('zend.ze1_compatibility_mode'))
    755755                {
    756756                        if (!empty($this->data['items']))
     
    16871687                                $headers = $file->headers;
    16881688                                $data = $file->body;
    1689                                 $sniffer = new $this->content_type_sniffer_class($file);
     1689                                $sniffer =& new $this->content_type_sniffer_class($file);
    16901690                                $sniffed = $sniffer->get_type();
    16911691                        }
     
    19651965                                        if ($file->success && ($file->status_code == 200 || ($file->status_code > 206 && $file->status_code < 300)) && strlen($file->body) > 0)
    19661966                                        {
    1967                                                 $sniffer = new $this->content_type_sniffer_class($file);
     1967                                                $sniffer =& new $this->content_type_sniffer_class($file);
    19681968                                                if (substr($sniffer->get_type(), 0, 6) === 'image/')
    19691969                                                {
     
    30863086        function __destruct()
    30873087        {
    3088                 if (version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled())
     3088                if ((version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled()) && !ini_get('zend.ze1_compatibility_mode'))
    30893089                {
    30903090                        unset($this->feed);
     
    77457745                                                                        case 'gzip':
    77467746                                                                        case 'x-gzip':
    7747                                                                                 $decoder = new SimplePie_gzdecode($this->body);
     7747                                                                                $decoder =& new SimplePie_gzdecode($this->body);
    77487748                                                                                if (!$decoder->parse())
    77497749                                                                                {
     
    1054310543        function entities_decode($data)
    1054410544        {
    10545                 $decoder = new SimplePie_Decode_HTML_Entities($data);
     10545                $decoder =& new SimplePie_Decode_HTML_Entities($data);
    1054610546                return $decoder->parse();
    1054710547        }
     
    1093910939                        if ($pos = strpos($data, "\x00\x00\x00\x3F\x00\x00\x00\x3E"))
    1094010940                        {
    10941                                 $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32BE', 'UTF-8'));
     10941                                $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32BE', 'UTF-8'));
    1094210942                                if ($parser->parse())
    1094310943                                {
     
    1095210952                        if ($pos = strpos($data, "\x3F\x00\x00\x00\x3E\x00\x00\x00"))
    1095310953                        {
    10954                                 $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32LE', 'UTF-8'));
     10954                                $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32LE', 'UTF-8'));
    1095510955                                if ($parser->parse())
    1095610956                                {
     
    1096510965                        if ($pos = strpos($data, "\x00\x3F\x00\x3E"))
    1096610966                        {
    10967                                 $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16BE', 'UTF-8'));
     10967                                $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16BE', 'UTF-8'));
    1096810968                                if ($parser->parse())
    1096910969                                {
     
    1097810978                        if ($pos = strpos($data, "\x3F\x00\x3E\x00"))
    1097910979                        {
    10980                                 $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16LE', 'UTF-8'));
     10980                                $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16LE', 'UTF-8'));
    1098110981                                if ($parser->parse())
    1098210982                                {
     
    1099110991                        if ($pos = strpos($data, "\x3F\x3E"))
    1099210992                        {
    10993                                 $parser = new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
     10993                                $parser =& new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
    1099410994                                if ($parser->parse())
    1099510995                                {
     
    1171711717                if (!isset($cache[get_class($this)]))
    1171811718                {
    11719                         if (extension_loaded('Reflection'))
    11720                         {
    11721                                 $class = new ReflectionClass(get_class($this));
    11722                                 $methods = $class->getMethods();
    11723                                 $all_methods = array();
    11724                                 foreach ($methods as $method)
    11725                                 {
    11726                                         $all_methods[] = $method->getName();
    11727                                 }
    11728                         }
    11729                         else
    11730                         {
    11731                                 $all_methods = get_class_methods($this);
    11732                         }
     11719                        $all_methods = get_class_methods($this);
    1173311720
    1173411721                        foreach ($all_methods as $method)
     
    1175711744                if (!$object)
    1175811745                {
    11759                         $object = new SimplePie_Parse_Date;
     11746                        $object =& new SimplePie_Parse_Date;
    1176011747                }
    1176111748                return $object;
     
    1279212779                if ($this->file->method & SIMPLEPIE_FILE_SOURCE_REMOTE)
    1279312780                {
    12794                         $sniffer = new $this->content_type_sniffer_class($this->file);
     12781                        $sniffer =& new $this->content_type_sniffer_class($this->file);
    1279512782                        if ($sniffer->get_type() !== 'text/html')
    1279612783                        {
     
    1283812825                if ($file->method & SIMPLEPIE_FILE_SOURCE_REMOTE)
    1283912826                {
    12840                         $sniffer = new $this->content_type_sniffer_class($file);
     12827                        $sniffer =& new $this->content_type_sniffer_class($file);
    1284112828                        $sniffed = $sniffer->get_type();
    1284212829                        if (in_array($sniffed, array('application/rss+xml', 'application/rdf+xml', 'text/rdf', 'application/atom+xml', 'text/xml', 'application/xml')))
     
    1306613053                if (substr($data, 0, 5) === '<?xml' && strspn(substr($data, 5, 1), "\x09\x0A\x0D\x20") && ($pos = strpos($data, '?>')) !== false)
    1306713054                {
    13068                         $declaration = new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
     13055                        $declaration =& new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
    1306913056                        if ($declaration->parse())
    1307013057                        {
Note: See TracChangeset for help on using the changeset viewer.