Make WordPress Core


Ignore:
Timestamp:
06/27/2009 10:13:01 PM (15 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.