diff options
Diffstat (limited to 'lib/SimplePie')
25 files changed, 562 insertions, 835 deletions
diff --git a/lib/SimplePie/SimplePie.php b/lib/SimplePie/SimplePie.php index b591bcddd..d684c1a2c 100644 --- a/lib/SimplePie/SimplePie.php +++ b/lib/SimplePie/SimplePie.php @@ -33,7 +33,7 @@ * POSSIBILITY OF SUCH DAMAGE. * * @package SimplePie - * @version 1.5 + * @version 1.5.2 * @copyright 2004-2017 Ryan Parman, Geoffrey Sneddon, Ryan McCue * @author Ryan Parman * @author Geoffrey Sneddon @@ -50,7 +50,7 @@ define('SIMPLEPIE_NAME', 'SimplePie'); /** * SimplePie Version */ -define('SIMPLEPIE_VERSION', '1.5'); +define('SIMPLEPIE_VERSION', '1.5.2'); /** * SimplePie Build @@ -822,7 +822,7 @@ class SimplePie } /** - * Set the the default timeout for fetching remote feeds + * Set the default timeout for fetching remote feeds * * This allows you to change the maximum time the feed's server to respond * and send the feed back. @@ -1364,6 +1364,11 @@ class SimplePie } } + // The default sanitize class gets set in the constructor, check if it has + // changed. + if ($this->registry->get_class('Sanitize') !== 'SimplePie_Sanitize') { + $this->sanitize = $this->registry->create('Sanitize'); + } if (method_exists($this->sanitize, 'set_registry')) { $this->sanitize->set_registry($this->registry); @@ -1431,7 +1436,7 @@ class SimplePie $md5 = $this->data['md5']; } } - + // Empty response check if(empty($this->raw_data)){ $this->error = "A feed could not be found at `$this->feed_url`. Empty body."; @@ -1508,7 +1513,7 @@ class SimplePie $this->data = $parser->get_data(); if (!($this->get_type() & ~SIMPLEPIE_TYPE_NONE)) { - $this->error = "A feed could not be found at $this->feed_url. This does not appear to be a valid RSS or Atom feed."; + $this->error = "A feed could not be found at `$this->feed_url`. This does not appear to be a valid RSS or Atom feed."; $this->registry->call('Misc', 'error', array($this->error, E_USER_NOTICE, __FILE__, __LINE__)); return false; } @@ -1524,7 +1529,7 @@ class SimplePie // Cache the file if caching is enabled if ($cache && !$cache->save($this)) { - trigger_error("$this->cache_location is not writeable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING); + trigger_error("$this->cache_location is not writable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING); } return true; } @@ -1694,25 +1699,64 @@ class SimplePie if (!$this->force_feed) { // Check if the supplied URL is a feed, if it isn't, look for it. - $locate = $this->registry->create('Locator', array(&$file, $this->timeout, $this->useragent, $this->max_checked_feeds)); + $locate = $this->registry->create('Locator', array(&$file, $this->timeout, $this->useragent, $this->max_checked_feeds, $this->force_fsockopen, $this->curl_options)); if (!$locate->is_feed($file)) { $copyStatusCode = $file->status_code; $copyContentType = $file->headers['content-type']; - // We need to unset this so that if SimplePie::set_file() has been called that object is untouched - unset($file); try { - if (!($file = $locate->find($this->autodiscovery, $this->all_discovered_feeds))) + $microformats = false; + if (class_exists('DOMXpath') && function_exists('Mf2\parse')) { + $doc = new DOMDocument(); + @$doc->loadHTML($file->body); + $xpath = new DOMXpath($doc); + // Check for both h-feed and h-entry, as both a feed with no entries + // and a list of entries without an h-feed wrapper are both valid. + $query = '//*[contains(concat(" ", @class, " "), " h-feed ") or '. + 'contains(concat(" ", @class, " "), " h-entry ")]'; + $result = $xpath->query($query); + $microformats = $result->length !== 0; + } + // Now also do feed discovery, but if microformats were found don't + // overwrite the current value of file. + $discovered = $locate->find($this->autodiscovery, + $this->all_discovered_feeds); + if ($microformats) { - $this->error = "A feed could not be found at `$this->feed_url`; the status code is `$copyStatusCode` and content-type is `$copyContentType`"; - $this->registry->call('Misc', 'error', array($this->error, E_USER_NOTICE, __FILE__, __LINE__)); - return false; + if ($hub = $locate->get_rel_link('hub')) + { + $self = $locate->get_rel_link('self'); + $this->store_links($file, $hub, $self); + } + // Push the current file onto all_discovered feeds so the user can + // be shown this as one of the options. + if (isset($this->all_discovered_feeds)) { + $this->all_discovered_feeds[] = $file; + } + } + else + { + if ($discovered) + { + $file = $discovered; + } + else + { + // We need to unset this so that if SimplePie::set_file() has + // been called that object is untouched + unset($file); + $this->error = "A feed could not be found at `$this->feed_url`; the status code is `$copyStatusCode` and content-type is `$copyContentType`"; + $this->registry->call('Misc', 'error', array($this->error, E_USER_NOTICE, __FILE__, __LINE__)); + return false; + } } } catch (SimplePie_Exception $e) { + // We need to unset this so that if SimplePie::set_file() has been called that object is untouched + unset($file); // This is usually because DOMDocument doesn't exist $this->error = $e->getMessage(); $this->registry->call('Misc', 'error', array($this->error, E_USER_NOTICE, $e->getFile(), $e->getLine())); @@ -1725,7 +1769,7 @@ class SimplePie $this->data['md5'] = empty($md5) ? $this->cleanMd5($file->body) : $md5; if (!$cache->save($this)) { - trigger_error("$this->cache_location is not writeable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING); + trigger_error("$this->cache_location is not writable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING); } $cache = $this->registry->call('Cache', 'get_handler', array($this->cache_location, call_user_func($this->cache_name_function, $file->url), 'spc')); } @@ -1922,7 +1966,7 @@ class SimplePie /** * Get the URL for the feed - * + * * When the 'permanent' mode is enabled, returns the original feed URL, * except in the case of an `HTTP 301 Moved Permanently` status response, * in which case the location of the first redirection is returned. @@ -2156,10 +2200,8 @@ class SimplePie { return $this->get_link(); } - else - { - return $this->subscribe_url(); - } + + return $this->subscribe_url(); } /** @@ -2229,10 +2271,8 @@ class SimplePie { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } /** @@ -2249,10 +2289,8 @@ class SimplePie { return $categories[$key]; } - else - { - return null; - } + + return null; } /** @@ -2314,10 +2352,8 @@ class SimplePie { return array_unique($categories); } - else - { - return null; - } + + return null; } /** @@ -2334,10 +2370,8 @@ class SimplePie { return $authors[$key]; } - else - { - return null; - } + + return null; } /** @@ -2412,10 +2446,8 @@ class SimplePie { return array_unique($authors); } - else - { - return null; - } + + return null; } /** @@ -2432,10 +2464,8 @@ class SimplePie { return $contributors[$key]; } - else - { - return null; - } + + return null; } /** @@ -2498,10 +2528,8 @@ class SimplePie { return array_unique($contributors); } - else - { - return null; - } + + return null; } /** @@ -2519,10 +2547,8 @@ class SimplePie { return $links[$key]; } - else - { - return null; - } + + return null; } /** @@ -2614,20 +2640,18 @@ class SimplePie } } - if (isset($this->data['links'][$rel])) - { - return $this->data['links'][$rel]; - } - else if (isset($this->data['headers']['link']) && - preg_match('/<([^>]+)>; rel='.preg_quote($rel).'/', - $this->data['headers']['link'], $match)) + if (isset($this->data['headers']['link']) && + preg_match('/<([^>]+)>; rel='.preg_quote($rel).'/', + $this->data['headers']['link'], $match)) { return array($match[1]); } - else + else if (isset($this->data['links'][$rel])) { - return null; + return $this->data['links'][$rel]; } + + return null; } public function get_all_discovered_feeds() @@ -2682,10 +2706,8 @@ class SimplePie { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_HTML, $this->get_base($return[0])); } - else - { - return null; - } + + return null; } /** @@ -2718,10 +2740,8 @@ class SimplePie { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } /** @@ -2762,10 +2782,8 @@ class SimplePie { return $this->sanitize($this->data['headers']['content-language'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } /** @@ -2791,10 +2809,8 @@ class SimplePie { return (float) $match[1]; } - else - { - return null; - } + + return null; } /** @@ -2823,10 +2839,8 @@ class SimplePie { return (float) $match[2]; } - else - { - return null; - } + + return null; } /** @@ -2860,10 +2874,8 @@ class SimplePie { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } /** @@ -2903,10 +2915,8 @@ class SimplePie { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($return[0])); } - else - { - return null; - } + + return null; } @@ -2935,10 +2945,8 @@ class SimplePie { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($return[0])); } - else - { - return null; - } + + return null; } /** @@ -2961,10 +2969,8 @@ class SimplePie { return 88.0; } - else - { - return null; - } + + return null; } /** @@ -2987,10 +2993,8 @@ class SimplePie { return 31.0; } - else - { - return null; - } + + return null; } /** @@ -3010,10 +3014,8 @@ class SimplePie { return $qty; } - else - { - return ($qty > $max) ? $max : $qty; - } + + return ($qty > $max) ? $max : $qty; } /** @@ -3035,10 +3037,8 @@ class SimplePie { return $items[$key]; } - else - { - return null; - } + + return null; } /** @@ -3133,10 +3133,8 @@ class SimplePie { return array_slice($items, $start); } - else - { - return array_slice($items, $start, $end); - } + + return array_slice($items, $start, $end); } /** @@ -3163,7 +3161,7 @@ class SimplePie if (($url = $this->get_link()) !== null) { - return 'http://g.etfv.co/' . urlencode($url); + return 'https://www.google.com/s2/favicons?domain=' . urlencode($url); } return false; @@ -3259,16 +3257,12 @@ class SimplePie { return array_slice($items, $start); } - else - { - return array_slice($items, $start, $end); - } - } - else - { - trigger_error('Cannot merge zero SimplePie objects', E_USER_WARNING); - return array(); + + return array_slice($items, $start, $end); } + + trigger_error('Cannot merge zero SimplePie objects', E_USER_WARNING); + return array(); } /** diff --git a/lib/SimplePie/SimplePie/Author.php b/lib/SimplePie/SimplePie/Author.php index e6768ff29..14794cf27 100644 --- a/lib/SimplePie/SimplePie/Author.php +++ b/lib/SimplePie/SimplePie/Author.php @@ -113,10 +113,8 @@ class SimplePie_Author { return $this->name; } - else - { - return null; - } + + return null; } /** @@ -130,10 +128,8 @@ class SimplePie_Author { return $this->link; } - else - { - return null; - } + + return null; } /** @@ -147,10 +143,7 @@ class SimplePie_Author { return $this->email; } - else - { - return null; - } + + return null; } } - diff --git a/lib/SimplePie/SimplePie/Cache/MySQL.php b/lib/SimplePie/SimplePie/Cache/MySQL.php index 8686b6c67..061ed043a 100644 --- a/lib/SimplePie/SimplePie/Cache/MySQL.php +++ b/lib/SimplePie/SimplePie/Cache/MySQL.php @@ -96,7 +96,7 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB 'cache_purge_time' => 2592000 ), ); - + $this->options = SimplePie_Misc::array_merge_recursive($this->options, SimplePie_Cache::parse_URL($location)); // Path is prefixed with a "/" @@ -395,10 +395,8 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB { return $time; } - else - { - return false; - } + + return false; } /** @@ -416,14 +414,8 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB $query = $this->mysql->prepare('UPDATE `' . $this->options['extras']['prefix'] . 'cache_data` SET `mtime` = :time WHERE `id` = :id'); $query->bindValue(':time', time()); $query->bindValue(':id', $this->id); - if ($query->execute() && $query->rowCount() > 0) - { - return true; - } - else - { - return false; - } + + return $query->execute() && $query->rowCount() > 0; } /** @@ -442,13 +434,7 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB $query->bindValue(':id', $this->id); $query2 = $this->mysql->prepare('DELETE FROM `' . $this->options['extras']['prefix'] . 'items` WHERE `feed_id` = :id'); $query2->bindValue(':id', $this->id); - if ($query->execute() && $query2->execute()) - { - return true; - } - else - { - return false; - } + + return $query->execute() && $query2->execute(); } } diff --git a/lib/SimplePie/SimplePie/Cache/Redis.php b/lib/SimplePie/SimplePie/Cache/Redis.php index 04d72c79a..dbc88e829 100644 --- a/lib/SimplePie/SimplePie/Cache/Redis.php +++ b/lib/SimplePie/SimplePie/Cache/Redis.php @@ -65,6 +65,12 @@ class SimplePie_Cache_Redis implements SimplePie_Cache_Base { $parsed = SimplePie_Cache::parse_URL($location); $redis = new Redis(); $redis->connect($parsed['host'], $parsed['port']); + if (isset($parsed['pass'])) { + $redis->auth($parsed['pass']); + } + if (isset($parsed['path'])) { + $redis->select((int)substr($parsed['path'], 1)); + } $this->cache = $redis; if (!is_null($options) && is_array($options)) { diff --git a/lib/SimplePie/SimplePie/Caption.php b/lib/SimplePie/SimplePie/Caption.php index abf07de1b..854857603 100644 --- a/lib/SimplePie/SimplePie/Caption.php +++ b/lib/SimplePie/SimplePie/Caption.php @@ -131,10 +131,8 @@ class SimplePie_Caption { return $this->endTime; } - else - { - return null; - } + + return null; } /** @@ -149,10 +147,8 @@ class SimplePie_Caption { return $this->lang; } - else - { - return null; - } + + return null; } /** @@ -166,10 +162,8 @@ class SimplePie_Caption { return $this->startTime; } - else - { - return null; - } + + return null; } /** @@ -183,10 +177,8 @@ class SimplePie_Caption { return $this->text; } - else - { - return null; - } + + return null; } /** @@ -200,10 +192,7 @@ class SimplePie_Caption { return $this->type; } - else - { - return null; - } + + return null; } } - diff --git a/lib/SimplePie/SimplePie/Content/Type/Sniffer.php b/lib/SimplePie/SimplePie/Content/Type/Sniffer.php index 6caf80f33..8962e6d9f 100644 --- a/lib/SimplePie/SimplePie/Content/Type/Sniffer.php +++ b/lib/SimplePie/SimplePie/Content/Type/Sniffer.php @@ -118,10 +118,8 @@ class SimplePie_Content_Type_Sniffer { return $return; } - else - { - return $official; - } + + return $official; } elseif ($official === 'text/html' || $official === 'text/xml' //FreshRSS @@ -129,15 +127,11 @@ class SimplePie_Content_Type_Sniffer { return $this->feed_or_html(); } - else - { - return $official; - } - } - else - { - return $this->unknown(); + + return $official; } + + return $this->unknown(); } /** @@ -158,10 +152,8 @@ class SimplePie_Content_Type_Sniffer { return 'application/octect-stream'; } - else - { - return 'text/plain'; - } + + return 'text/plain'; } /** @@ -207,10 +199,8 @@ class SimplePie_Content_Type_Sniffer { return 'image/vnd.microsoft.icon'; } - else - { - return $this->text_or_binary(); - } + + return $this->text_or_binary(); } /** @@ -241,10 +231,8 @@ class SimplePie_Content_Type_Sniffer { return 'image/vnd.microsoft.icon'; } - else - { - return false; - } + + return false; } /** @@ -328,4 +316,3 @@ class SimplePie_Content_Type_Sniffer return 'text/html'; } } - diff --git a/lib/SimplePie/SimplePie/Copyright.php b/lib/SimplePie/SimplePie/Copyright.php index 3f3d07d3b..a57f323e6 100644 --- a/lib/SimplePie/SimplePie/Copyright.php +++ b/lib/SimplePie/SimplePie/Copyright.php @@ -103,10 +103,8 @@ class SimplePie_Copyright { return $this->url; } - else - { - return null; - } + + return null; } /** @@ -120,10 +118,7 @@ class SimplePie_Copyright { return $this->label; } - else - { - return null; - } + + return null; } } - diff --git a/lib/SimplePie/SimplePie/Credit.php b/lib/SimplePie/SimplePie/Credit.php index 9bad9ef34..064a1b864 100644 --- a/lib/SimplePie/SimplePie/Credit.php +++ b/lib/SimplePie/SimplePie/Credit.php @@ -112,10 +112,8 @@ class SimplePie_Credit { return $this->role; } - else - { - return null; - } + + return null; } /** @@ -129,10 +127,8 @@ class SimplePie_Credit { return $this->scheme; } - else - { - return null; - } + + return null; } /** @@ -146,10 +142,7 @@ class SimplePie_Credit { return $this->name; } - else - { - return null; - } + + return null; } } - diff --git a/lib/SimplePie/SimplePie/Decode/HTML/Entities.php b/lib/SimplePie/SimplePie/Decode/HTML/Entities.php index de3f2cb53..773481a8c 100644 --- a/lib/SimplePie/SimplePie/Decode/HTML/Entities.php +++ b/lib/SimplePie/SimplePie/Decode/HTML/Entities.php @@ -117,10 +117,8 @@ class SimplePie_Decode_HTML_Entities $this->consumed .= $this->data[$this->position]; return $this->data[$this->position++]; } - else - { - return false; - } + + return false; } /** @@ -139,10 +137,8 @@ class SimplePie_Decode_HTML_Entities $this->position += $len; return $data; } - else - { - return false; - } + + return false; } /** @@ -612,4 +608,3 @@ class SimplePie_Decode_HTML_Entities } } } - diff --git a/lib/SimplePie/SimplePie/Enclosure.php b/lib/SimplePie/SimplePie/Enclosure.php index 15060e193..ddbbc3c92 100644 --- a/lib/SimplePie/SimplePie/Enclosure.php +++ b/lib/SimplePie/SimplePie/Enclosure.php @@ -282,10 +282,8 @@ class SimplePie_Enclosure { return $this->bitrate; } - else - { - return null; - } + + return null; } /** @@ -301,10 +299,8 @@ class SimplePie_Enclosure { return $captions[$key]; } - else - { - return null; - } + + return null; } /** @@ -318,10 +314,8 @@ class SimplePie_Enclosure { return $this->captions; } - else - { - return null; - } + + return null; } /** @@ -337,10 +331,8 @@ class SimplePie_Enclosure { return $categories[$key]; } - else - { - return null; - } + + return null; } /** @@ -354,10 +346,8 @@ class SimplePie_Enclosure { return $this->categories; } - else - { - return null; - } + + return null; } /** @@ -371,10 +361,8 @@ class SimplePie_Enclosure { return $this->channels; } - else - { - return null; - } + + return null; } /** @@ -388,10 +376,8 @@ class SimplePie_Enclosure { return $this->copyright; } - else - { - return null; - } + + return null; } /** @@ -407,10 +393,8 @@ class SimplePie_Enclosure { return $credits[$key]; } - else - { - return null; - } + + return null; } /** @@ -424,10 +408,8 @@ class SimplePie_Enclosure { return $this->credits; } - else - { - return null; - } + + return null; } /** @@ -441,10 +423,8 @@ class SimplePie_Enclosure { return $this->description; } - else - { - return null; - } + + return null; } /** @@ -462,15 +442,11 @@ class SimplePie_Enclosure $time = SimplePie_Misc::time_hms($this->duration); return $time; } - else - { - return $this->duration; - } - } - else - { - return null; + + return $this->duration; } + + return null; } /** @@ -484,10 +460,8 @@ class SimplePie_Enclosure { return $this->expression; } - else - { - return 'full'; - } + + return 'full'; } /** @@ -519,10 +493,8 @@ class SimplePie_Enclosure { return $this->framerate; } - else - { - return null; - } + + return null; } /** @@ -549,10 +521,8 @@ class SimplePie_Enclosure { return $hashes[$key]; } - else - { - return null; - } + + return null; } /** @@ -566,10 +536,8 @@ class SimplePie_Enclosure { return $this->hashes; } - else - { - return null; - } + + return null; } /** @@ -583,10 +551,8 @@ class SimplePie_Enclosure { return $this->height; } - else - { - return null; - } + + return null; } /** @@ -601,10 +567,8 @@ class SimplePie_Enclosure { return $this->lang; } - else - { - return null; - } + + return null; } /** @@ -620,10 +584,8 @@ class SimplePie_Enclosure { return $keywords[$key]; } - else - { - return null; - } + + return null; } /** @@ -637,10 +599,8 @@ class SimplePie_Enclosure { return $this->keywords; } - else - { - return null; - } + + return null; } /** @@ -654,10 +614,8 @@ class SimplePie_Enclosure { return $this->length; } - else - { - return null; - } + + return null; } /** @@ -671,10 +629,8 @@ class SimplePie_Enclosure { return urldecode($this->link); } - else - { - return null; - } + + return null; } /** @@ -689,10 +645,8 @@ class SimplePie_Enclosure { return $this->medium; } - else - { - return null; - } + + return null; } /** @@ -707,10 +661,8 @@ class SimplePie_Enclosure { return $this->player; } - else - { - return null; - } + + return null; } /** @@ -726,10 +678,8 @@ class SimplePie_Enclosure { return $ratings[$key]; } - else - { - return null; - } + + return null; } /** @@ -743,10 +693,8 @@ class SimplePie_Enclosure { return $this->ratings; } - else - { - return null; - } + + return null; } /** @@ -762,10 +710,8 @@ class SimplePie_Enclosure { return $restrictions[$key]; } - else - { - return null; - } + + return null; } /** @@ -779,10 +725,8 @@ class SimplePie_Enclosure { return $this->restrictions; } - else - { - return null; - } + + return null; } /** @@ -796,10 +740,8 @@ class SimplePie_Enclosure { return $this->samplingrate; } - else - { - return null; - } + + return null; } /** @@ -814,10 +756,8 @@ class SimplePie_Enclosure { return round($length/1048576, 2); } - else - { - return null; - } + + return null; } /** @@ -833,10 +773,8 @@ class SimplePie_Enclosure { return $thumbnails[$key]; } - else - { - return null; - } + + return null; } /** @@ -850,10 +788,8 @@ class SimplePie_Enclosure { return $this->thumbnails; } - else - { - return null; - } + + return null; } /** @@ -867,10 +803,8 @@ class SimplePie_Enclosure { return $this->title; } - else - { - return null; - } + + return null; } /** @@ -885,10 +819,8 @@ class SimplePie_Enclosure { return $this->type; } - else - { - return null; - } + + return null; } /** @@ -902,10 +834,8 @@ class SimplePie_Enclosure { return $this->width; } - else - { - return null; - } + + return null; } /** @@ -1365,15 +1295,10 @@ class SimplePie_Enclosure { return 'mp3'; } - else - { - return null; - } - } - else - { - return $type; + + return null; } + + return $type; } } - diff --git a/lib/SimplePie/SimplePie/File.php b/lib/SimplePie/SimplePie/File.php index b8a595571..c5c398ee1 100644 --- a/lib/SimplePie/SimplePie/File.php +++ b/lib/SimplePie/SimplePie/File.php @@ -71,7 +71,7 @@ class SimplePie_File { $idn = new idna_convert(); $parsed = SimplePie_Misc::parse_url($url); - $url = SimplePie_Misc::compress_parse_url($parsed['scheme'], $idn->encode($parsed['authority']), $parsed['path'], $parsed['query'], $parsed['fragment']); + $url = SimplePie_Misc::compress_parse_url($parsed['scheme'], $idn->encode($parsed['authority']), $parsed['path'], $parsed['query'], NULL); } $this->url = $url; $this->permanent_url = $url; diff --git a/lib/SimplePie/SimplePie/HTTP/Parser.php b/lib/SimplePie/SimplePie/HTTP/Parser.php index 3899c53fa..7d6188dd1 100644 --- a/lib/SimplePie/SimplePie/HTTP/Parser.php +++ b/lib/SimplePie/SimplePie/HTTP/Parser.php @@ -155,15 +155,13 @@ class SimplePie_HTTP_Parser { return true; } - else - { - $this->http_version = ''; - $this->status_code = ''; - $this->reason = ''; - $this->headers = array(); - $this->body = ''; - return false; - } + + $this->http_version = ''; + $this->status_code = ''; + $this->reason = ''; + $this->headers = array(); + $this->body = ''; + return false; } /** @@ -512,6 +510,9 @@ class SimplePie_HTTP_Parser if (false !== stripos($data, "HTTP/1.0 200 Connection established\r\n\r\n")) { $data = str_ireplace("HTTP/1.0 200 Connection established\r\n\r\n", '', $data); } + if (false !== stripos($data, "HTTP/1.1 200 Connection established\r\n\r\n")) { + $data = str_ireplace("HTTP/1.1 200 Connection established\r\n\r\n", '', $data); + } return $data; } } diff --git a/lib/SimplePie/SimplePie/IRI.php b/lib/SimplePie/SimplePie/IRI.php index 2b3fbaf07..ffba232b1 100644 --- a/lib/SimplePie/SimplePie/IRI.php +++ b/lib/SimplePie/SimplePie/IRI.php @@ -211,10 +211,8 @@ class SimplePie_IRI { return $this->normalization[$this->scheme][$name]; } - else - { - return $return; - } + + return $return; } /** @@ -225,14 +223,7 @@ class SimplePie_IRI */ public function __isset($name) { - if (method_exists($this, 'get_' . $name) || isset($this->$name)) - { - return true; - } - else - { - return false; - } + return method_exists($this, 'get_' . $name) || isset($this->$name); } /** @@ -356,10 +347,8 @@ class SimplePie_IRI $target->scheme_normalization(); return $target; } - else - { - return false; - } + + return false; } } @@ -396,11 +385,9 @@ class SimplePie_IRI } return $match; } - else - { - // This can occur when a paragraph is accidentally parsed as a URI - return false; - } + + // This can occur when a paragraph is accidentally parsed as a URI + return false; } /** @@ -804,7 +791,7 @@ class SimplePie_IRI public function set_iri($iri, $clear_cache = false) { static $cache; - if ($clear_cache) + if ($clear_cache) { $cache = null; return; @@ -830,30 +817,28 @@ class SimplePie_IRI $return) = $cache[$iri]; return $return; } - else - { - $parsed = $this->parse_iri((string) $iri); - if (!$parsed) - { - return false; - } - $return = $this->set_scheme($parsed['scheme']) - && $this->set_authority($parsed['authority']) - && $this->set_path($parsed['path']) - && $this->set_query($parsed['query']) - && $this->set_fragment($parsed['fragment']); - - $cache[$iri] = array($this->scheme, - $this->iuserinfo, - $this->ihost, - $this->port, - $this->ipath, - $this->iquery, - $this->ifragment, - $return); - return $return; + $parsed = $this->parse_iri((string) $iri); + if (!$parsed) + { + return false; } + + $return = $this->set_scheme($parsed['scheme']) + && $this->set_authority($parsed['authority']) + && $this->set_path($parsed['path']) + && $this->set_query($parsed['query']) + && $this->set_fragment($parsed['fragment']); + + $cache[$iri] = array($this->scheme, + $this->iuserinfo, + $this->ihost, + $this->port, + $this->ipath, + $this->iquery, + $this->ifragment, + $return); + return $return; } /** @@ -915,42 +900,40 @@ class SimplePie_IRI return $return; } + + $remaining = $authority; + if (($iuserinfo_end = strrpos($remaining, '@')) !== false) + { + $iuserinfo = substr($remaining, 0, $iuserinfo_end); + $remaining = substr($remaining, $iuserinfo_end + 1); + } else { - $remaining = $authority; - if (($iuserinfo_end = strrpos($remaining, '@')) !== false) - { - $iuserinfo = substr($remaining, 0, $iuserinfo_end); - $remaining = substr($remaining, $iuserinfo_end + 1); - } - else - { - $iuserinfo = null; - } - if (($port_start = strpos($remaining, ':', strpos($remaining, ']'))) !== false) - { - if (($port = substr($remaining, $port_start + 1)) === false) - { - $port = null; - } - $remaining = substr($remaining, 0, $port_start); - } - else + $iuserinfo = null; + } + if (($port_start = strpos($remaining, ':', strpos($remaining, ']'))) !== false) + { + if (($port = substr($remaining, $port_start + 1)) === false) { $port = null; } + $remaining = substr($remaining, 0, $port_start); + } + else + { + $port = null; + } - $return = $this->set_userinfo($iuserinfo) && - $this->set_host($remaining) && - $this->set_port($port); + $return = $this->set_userinfo($iuserinfo) && + $this->set_host($remaining) && + $this->set_port($port); - $cache[$authority] = array($this->iuserinfo, - $this->ihost, - $this->port, - $return); + $cache[$authority] = array($this->iuserinfo, + $this->ihost, + $this->port, + $return); - return $return; - } + return $return; } /** @@ -1050,11 +1033,9 @@ class SimplePie_IRI $this->scheme_normalization(); return true; } - else - { - $this->port = null; - return false; - } + + $this->port = null; + return false; } /** @@ -1066,7 +1047,7 @@ class SimplePie_IRI public function set_path($ipath, $clear_cache = false) { static $cache; - if ($clear_cache) + if ($clear_cache) { $cache = null; return; @@ -1185,7 +1166,7 @@ class SimplePie_IRI { $iri .= $this->ipath; } - elseif (!empty($this->normalization[$this->scheme]['ipath']) && $iauthority !== null && $iauthority !== '') + elseif (!empty($this->normalization[$this->scheme]['ipath']) && $iauthority !== null && $iauthority !== '') { $iri .= $this->normalization[$this->scheme]['ipath']; } @@ -1229,16 +1210,14 @@ class SimplePie_IRI { $iauthority .= $this->ihost; } - if ($this->port !== null) + if ($this->port !== null && $this->port !== 0) { $iauthority .= ':' . $this->port; } return $iauthority; } - else - { - return null; - } + + return null; } /** @@ -1251,7 +1230,7 @@ class SimplePie_IRI $iauthority = $this->get_iauthority(); if (is_string($iauthority)) return $this->to_uri($iauthority); - else - return $iauthority; + + return $iauthority; } } diff --git a/lib/SimplePie/SimplePie/Item.php b/lib/SimplePie/SimplePie/Item.php index 425538606..9b9c1f5db 100644 --- a/lib/SimplePie/SimplePie/Item.php +++ b/lib/SimplePie/SimplePie/Item.php @@ -147,10 +147,8 @@ class SimplePie_Item { return $this->data['child'][$namespace][$tag]; } - else - { - return null; - } + + return null; } /** @@ -366,10 +364,8 @@ class SimplePie_Item { return $this->get_content(true); } - else - { - return null; - } + + return null; } /** @@ -407,18 +403,16 @@ class SimplePie_Item { return $this->get_description(true); } - else - { - return null; - } + + return null; } - + /** * Get the media:thumbnail of the item * * Uses `<media:thumbnail>` * - * + * * @return array|null */ public function get_thumbnail() @@ -435,7 +429,7 @@ class SimplePie_Item } } return $this->data['thumbnail']; - } + } /** * Get a category for the item @@ -451,10 +445,8 @@ class SimplePie_Item { return $categories[$key]; } - else - { - return null; - } + + return null; } /** @@ -477,15 +469,15 @@ class SimplePie_Item $label = null; if (isset($category['attribs']['']['term'])) { - $term = $this->sanitize($category['attribs']['']['term'], SIMPLEPIE_CONSTRUCT_HTML); + $term = $this->sanitize($category['attribs']['']['term'], SIMPLEPIE_CONSTRUCT_TEXT); } if (isset($category['attribs']['']['scheme'])) { - $scheme = $this->sanitize($category['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_HTML); + $scheme = $this->sanitize($category['attribs']['']['scheme'], SIMPLEPIE_CONSTRUCT_TEXT); } if (isset($category['attribs']['']['label'])) { - $label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_HTML); + $label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT); } $categories[] = $this->registry->create('Category', array($term, $scheme, $label, $type)); } @@ -493,10 +485,10 @@ class SimplePie_Item { // This is really the label, but keep this as the term also for BC. // Label will also work on retrieving because that falls back to term. - $term = $this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_HTML); + $term = $this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT); if (isset($category['attribs']['']['domain'])) { - $scheme = $this->sanitize($category['attribs']['']['domain'], SIMPLEPIE_CONSTRUCT_HTML); + $scheme = $this->sanitize($category['attribs']['']['domain'], SIMPLEPIE_CONSTRUCT_TEXT); } else { @@ -508,21 +500,19 @@ class SimplePie_Item $type = 'subject'; foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, $type) as $category) { - $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null, $type)); + $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null, $type)); } foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, $type) as $category) { - $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null, $type)); + $categories[] = $this->registry->create('Category', array($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null, $type)); } if (!empty($categories)) { return array_unique($categories); } - else - { - return null; - } + + return null; } /** @@ -539,10 +529,8 @@ class SimplePie_Item { return $authors[$key]; } - else - { - return null; - } + + return null; } /** @@ -559,10 +547,8 @@ class SimplePie_Item { return $contributors[$key]; } - else - { - return null; - } + + return null; } /** @@ -571,7 +557,7 @@ class SimplePie_Item * Uses `<atom:contributor>` * * @since 1.1 - * @return array|null List of {@see SimplePie_Author} objects + * @return SimplePie_Author[]|null List of {@see SimplePie_Author} objects */ public function get_contributors() { @@ -625,10 +611,8 @@ class SimplePie_Item { return array_unique($contributors); } - else - { - return null; - } + + return null; } /** @@ -637,7 +621,7 @@ class SimplePie_Item * Uses `<atom:author>`, `<author>`, `<dc:creator>` or `<itunes:author>` * * @since Beta 2 - * @return array|null List of {@see SimplePie_Author} objects + * @return SimplePie_Author[]|null List of {@see SimplePie_Author} objects */ public function get_authors() { @@ -649,7 +633,7 @@ class SimplePie_Item $email = null; if (isset($author['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['name'][0]['data'])) { - $name = $this->sanitize($author['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['name'][0]['data'], SIMPLEPIE_CONSTRUCT_HTML); + $name = $this->sanitize($author['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['name'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } if (isset($author['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['uri'][0]['data'])) { @@ -657,7 +641,7 @@ class SimplePie_Item } if (isset($author['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['email'][0]['data'])) { - $email = $this->sanitize($author['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['email'][0]['data'], SIMPLEPIE_CONSTRUCT_HTML); + $email = $this->sanitize($author['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['email'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } if ($name !== null || $email !== null || $uri !== null) { @@ -671,7 +655,7 @@ class SimplePie_Item $email = null; if (isset($author[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_03]['name'][0]['data'])) { - $name = $this->sanitize($author[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_03]['name'][0]['data'], SIMPLEPIE_CONSTRUCT_HTML); + $name = $this->sanitize($author[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_03]['name'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } if (isset($author[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_03]['url'][0]['data'])) { @@ -679,7 +663,7 @@ class SimplePie_Item } if (isset($author[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_03]['email'][0]['data'])) { - $email = $this->sanitize($author[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_03]['email'][0]['data'], SIMPLEPIE_CONSTRUCT_HTML); + $email = $this->sanitize($author[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_03]['email'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } if ($name !== null || $email !== null || $url !== null) { @@ -688,19 +672,19 @@ class SimplePie_Item } if ($author = $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'author')) { - $authors[] = $this->registry->create('Author', array(null, null, $this->sanitize($author[0]['data'], SIMPLEPIE_CONSTRUCT_HTML))); + $authors[] = $this->registry->create('Author', array(null, null, $this->sanitize($author[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT))); } foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, 'creator') as $author) { - $authors[] = $this->registry->create('Author', array($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null)); + $authors[] = $this->registry->create('Author', array($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null)); } foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, 'creator') as $author) { - $authors[] = $this->registry->create('Author', array($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null)); + $authors[] = $this->registry->create('Author', array($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null)); } foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'author') as $author) { - $authors[] = $this->registry->create('Author', array($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_HTML), null, null)); + $authors[] = $this->registry->create('Author', array($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null)); } if (!empty($authors)) @@ -715,10 +699,8 @@ class SimplePie_Item { return $authors; } - else - { - return null; - } + + return null; } /** @@ -743,10 +725,8 @@ class SimplePie_Item { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } /** @@ -825,10 +805,8 @@ class SimplePie_Item return date($date_format, $this->data['date']['parsed']); } } - else - { - return null; - } + + return null; } /** @@ -876,10 +854,8 @@ class SimplePie_Item return date($date_format, $this->data['updated']['parsed']); } } - else - { - return null; - } + + return null; } /** @@ -905,10 +881,8 @@ class SimplePie_Item { return strftime($date_format, $date); } - else - { - return null; - } + + return null; } /** @@ -969,10 +943,8 @@ class SimplePie_Item { return $enclosure->get_link(); } - else - { - return null; - } + + return null; } /** @@ -990,10 +962,8 @@ class SimplePie_Item { return $links[$key]; } - else - { - return null; - } + + return null; } /** @@ -1073,10 +1043,8 @@ class SimplePie_Item { return $this->data['links'][$rel]; } - else - { - return null; - } + + return null; } /** @@ -1096,10 +1064,8 @@ class SimplePie_Item { return $enclosures[$key]; } - else - { - return null; - } + + return null; } /** @@ -2896,7 +2862,6 @@ class SimplePie_Item $width = null; $url = $this->sanitize($enclosure[0]['attribs']['']['url'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($enclosure[0])); - $url = $this->feed->sanitize->https_url($url); //FreshRSS if (isset($enclosure[0]['attribs']['']['type'])) { $type = $this->sanitize($enclosure[0]['attribs']['']['type'], SIMPLEPIE_CONSTRUCT_TEXT); @@ -2923,10 +2888,8 @@ class SimplePie_Item { return $this->data['enclosures']; } - else - { - return null; - } + + return null; } /** @@ -2951,10 +2914,8 @@ class SimplePie_Item { return (float) $match[1]; } - else - { - return null; - } + + return null; } /** @@ -2983,10 +2944,8 @@ class SimplePie_Item { return (float) $match[2]; } - else - { - return null; - } + + return null; } /** @@ -3001,10 +2960,7 @@ class SimplePie_Item { return $this->registry->create('Source', array($this, $return[0])); } - else - { - return null; - } + + return null; } } - diff --git a/lib/SimplePie/SimplePie/Locator.php b/lib/SimplePie/SimplePie/Locator.php index bc314c2cd..3876a2da6 100644 --- a/lib/SimplePie/SimplePie/Locator.php +++ b/lib/SimplePie/SimplePie/Locator.php @@ -62,14 +62,18 @@ class SimplePie_Locator var $base_location = 0; var $checked_feeds = 0; var $max_checked_feeds = 10; + var $force_fsockopen = false; + var $curl_options = array(); protected $registry; - public function __construct(SimplePie_File $file, $timeout = 10, $useragent = null, $max_checked_feeds = 10) + public function __construct(SimplePie_File $file, $timeout = 10, $useragent = null, $max_checked_feeds = 10, $force_fsockopen = false, $curl_options = array()) { $this->file = $file; $this->useragent = $useragent; $this->timeout = $timeout; $this->max_checked_feeds = $max_checked_feeds; + $this->force_fsockopen = $force_fsockopen; + $this->curl_options = $curl_options; if (class_exists('DOMDocument')) { @@ -154,14 +158,8 @@ class SimplePie_Locator { $mime_types[] = 'text/html'; } - if (in_array($sniffed, $mime_types)) - { - return true; - } - else - { - return false; - } + + return in_array($sniffed, $mime_types); } elseif ($file->method & SIMPLEPIE_FILE_SOURCE_LOCAL) { @@ -210,10 +208,8 @@ class SimplePie_Locator { return array_values($feeds); } - else - { - return null; - } + + return null; } protected function search_elements_by_tag($name, &$done, $feeds) @@ -254,7 +250,7 @@ class SimplePie_Locator $headers = array( 'Accept' => 'application/atom+xml, application/rss+xml, application/rdf+xml;q=0.9, application/xml;q=0.8, text/xml;q=0.8, text/html;q=0.7, unknown/unknown;q=0.1, application/unknown;q=0.1, */*;q=0.1', ); - $feed = $this->registry->create('File', array($href, $this->timeout, 5, $headers, $this->useragent)); + $feed = $this->registry->create('File', array($href, $this->timeout, 5, $headers, $this->useragent, $this->force_fsockopen, $this->curl_options)); if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed, true)) { $feeds[$href] = $feed; @@ -384,7 +380,7 @@ class SimplePie_Locator $headers = array( 'Accept' => 'application/atom+xml, application/rss+xml, application/rdf+xml;q=0.9, application/xml;q=0.8, text/xml;q=0.8, text/html;q=0.7, unknown/unknown;q=0.1, application/unknown;q=0.1, */*;q=0.1', ); - $feed = $this->registry->create('File', array($value, $this->timeout, 5, $headers, $this->useragent)); + $feed = $this->registry->create('File', array($value, $this->timeout, 5, $headers, $this->useragent, $this->force_fsockopen, $this->curl_options)); if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed)) { return array($feed); @@ -412,7 +408,7 @@ class SimplePie_Locator $headers = array( 'Accept' => 'application/atom+xml, application/rss+xml, application/rdf+xml;q=0.9, application/xml;q=0.8, text/xml;q=0.8, text/html;q=0.7, unknown/unknown;q=0.1, application/unknown;q=0.1, */*;q=0.1', ); - $feed = $this->registry->create('File', array($value, $this->timeout, 5, null, $this->useragent)); + $feed = $this->registry->create('File', array($value, $this->timeout, 5, null, $this->useragent, $this->force_fsockopen, $this->curl_options)); if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed)) { return array($feed); @@ -426,4 +422,3 @@ class SimplePie_Locator return null; } } - diff --git a/lib/SimplePie/SimplePie/Misc.php b/lib/SimplePie/SimplePie/Misc.php index 1f338623c..016a60ccc 100644 --- a/lib/SimplePie/SimplePie/Misc.php +++ b/lib/SimplePie/SimplePie/Misc.php @@ -221,10 +221,8 @@ class SimplePie_Misc { return substr_replace($url, 'itpc', 0, 4); } - else - { - return $url; - } + + return $url; } public static function array_merge_recursive($array1, $array2) @@ -238,9 +236,9 @@ class SimplePie_Misc else { $array1[$key] = $value; - } + } } - + return $array1; } @@ -280,10 +278,8 @@ class SimplePie_Misc { return chr($integer); } - else - { - return strtoupper($match[0]); - } + + return strtoupper($match[0]); } /** @@ -347,11 +343,9 @@ class SimplePie_Misc { return $return; } + // If we can't do anything, just fail - else - { - return false; - } + return false; } protected static function change_encoding_mbstring($data, $input, $output) @@ -1862,10 +1856,8 @@ class SimplePie_Misc { return trim($mime); } - else - { - return trim(substr($mime, 0, $pos)); - } + + return trim(substr($mime, 0, $pos)); } public static function atom_03_construct_type($attribs) @@ -1898,10 +1890,8 @@ class SimplePie_Misc return SIMPLEPIE_CONSTRUCT_NONE | $mode; } } - else - { - return SIMPLEPIE_CONSTRUCT_TEXT | $mode; - } + + return SIMPLEPIE_CONSTRUCT_TEXT | $mode; } public static function atom_10_construct_type($attribs) @@ -1960,10 +1950,8 @@ class SimplePie_Misc return SIMPLEPIE_CONSTRUCT_BASE64; } } - else - { - return SIMPLEPIE_CONSTRUCT_TEXT; - } + + return SIMPLEPIE_CONSTRUCT_TEXT; } public static function is_isegment_nz_nc($string) @@ -2020,11 +2008,9 @@ class SimplePie_Misc { return chr(0xf0 | ($codepoint >> 18)) . chr(0x80 | (($codepoint >> 12) & 0x3f)) . chr(0x80 | (($codepoint >> 6) & 0x3f)) . chr(0x80 | ($codepoint & 0x3f)); } - else - { - // U+FFFD REPLACEMENT CHARACTER - return "\xEF\xBF\xBD"; - } + + // U+FFFD REPLACEMENT CHARACTER + return "\xEF\xBF\xBD"; } /** @@ -2276,4 +2262,3 @@ function embed_wmedia(width, height, link) { return preg_replace('#^(https?://)[^/:@]+:[^/:@]+@#i', '$1', $url); } } - diff --git a/lib/SimplePie/SimplePie/Net/IPv6.php b/lib/SimplePie/SimplePie/Net/IPv6.php index 47658aff2..a054e8be5 100644 --- a/lib/SimplePie/SimplePie/Net/IPv6.php +++ b/lib/SimplePie/SimplePie/Net/IPv6.php @@ -173,10 +173,8 @@ class SimplePie_Net_IPv6 { return implode(':', $ip_parts); } - else - { - return $ip_parts[0]; - } + + return $ip_parts[0]; } /** @@ -200,10 +198,8 @@ class SimplePie_Net_IPv6 $ipv4_part = substr($ip, $pos + 1); return array($ipv6_part, $ipv4_part); } - else - { - return array($ip, ''); - } + + return array($ip, ''); } /** @@ -253,10 +249,8 @@ class SimplePie_Net_IPv6 } return true; } - else - { - return false; - } + + return false; } /** diff --git a/lib/SimplePie/SimplePie/Parse/Date.php b/lib/SimplePie/SimplePie/Parse/Date.php index 1f2156655..b29274c64 100644 --- a/lib/SimplePie/SimplePie/Parse/Date.php +++ b/lib/SimplePie/SimplePie/Parse/Date.php @@ -694,10 +694,8 @@ class SimplePie_Parse_Date return gmmktime($match[4], $match[5], $second, $match[2], $match[3], $match[1]) - $timezone; } - else - { - return false; - } + + return false; } /** @@ -848,10 +846,8 @@ class SimplePie_Parse_Date return gmmktime($match[5], $match[6], $second, $month, $match[2], $match[4]) - $timezone; } - else - { - return false; - } + + return false; } /** @@ -913,10 +909,8 @@ class SimplePie_Parse_Date return gmmktime($match[5], $match[6], $match[7], $month, $match[2], $match[4]) - $timezone; } - else - { - return false; - } + + return false; } /** @@ -955,10 +949,8 @@ class SimplePie_Parse_Date $month = $this->month[strtolower($match[2])]; return gmmktime($match[4], $match[5], $match[6], $month, $match[3], $match[7]); } - else - { - return false; - } + + return false; } /** @@ -974,10 +966,7 @@ class SimplePie_Parse_Date { return false; } - else - { - return $strtotime; - } + + return $strtotime; } } - diff --git a/lib/SimplePie/SimplePie/Parser.php b/lib/SimplePie/SimplePie/Parser.php index bdcc1a516..f9918334c 100644 --- a/lib/SimplePie/SimplePie/Parser.php +++ b/lib/SimplePie/SimplePie/Parser.php @@ -74,7 +74,7 @@ class SimplePie_Parser $this->registry = $registry; } - public function parse(&$data, $encoding) + public function parse(&$data, $encoding, $url = '') { $xmlEncoding = ''; @@ -193,76 +193,72 @@ class SimplePie_Parser xml_parser_free($xml); return $return; } - else + + libxml_clear_errors(); + $xml = new XMLReader(); + $xml->xml($data); + while (@$xml->read()) { - libxml_clear_errors(); - $xml = new XMLReader(); - $xml->xml($data); - while (@$xml->read()) + switch ($xml->nodeType) { - switch ($xml->nodeType) - { - case constant('XMLReader::END_ELEMENT'): + case constant('XMLReader::END_ELEMENT'): + if ($xml->namespaceURI !== '') + { + $tagName = $xml->namespaceURI . $this->separator . $xml->localName; + } + else + { + $tagName = $xml->localName; + } + $this->tag_close(null, $tagName); + break; + case constant('XMLReader::ELEMENT'): + $empty = $xml->isEmptyElement; + if ($xml->namespaceURI !== '') + { + $tagName = $xml->namespaceURI . $this->separator . $xml->localName; + } + else + { + $tagName = $xml->localName; + } + $attributes = array(); + while ($xml->moveToNextAttribute()) + { if ($xml->namespaceURI !== '') { - $tagName = $xml->namespaceURI . $this->separator . $xml->localName; + $attrName = $xml->namespaceURI . $this->separator . $xml->localName; } else { - $tagName = $xml->localName; + $attrName = $xml->localName; } + $attributes[$attrName] = $xml->value; + } + $this->tag_open(null, $tagName, $attributes); + if ($empty) + { $this->tag_close(null, $tagName); - break; - case constant('XMLReader::ELEMENT'): - $empty = $xml->isEmptyElement; - if ($xml->namespaceURI !== '') - { - $tagName = $xml->namespaceURI . $this->separator . $xml->localName; - } - else - { - $tagName = $xml->localName; - } - $attributes = array(); - while ($xml->moveToNextAttribute()) - { - if ($xml->namespaceURI !== '') - { - $attrName = $xml->namespaceURI . $this->separator . $xml->localName; - } - else - { - $attrName = $xml->localName; - } - $attributes[$attrName] = $xml->value; - } - $this->tag_open(null, $tagName, $attributes); - if ($empty) - { - $this->tag_close(null, $tagName); - } - break; - case constant('XMLReader::TEXT'): + } + break; + case constant('XMLReader::TEXT'): - case constant('XMLReader::CDATA'): - $this->cdata(null, $xml->value); - break; - } - } - if ($error = libxml_get_last_error()) - { - $this->error_code = $error->code; - $this->error_string = $error->message; - $this->current_line = $error->line; - $this->current_column = $error->column; - return false; - } - else - { - return true; + case constant('XMLReader::CDATA'): + $this->cdata(null, $xml->value); + break; } } + if ($error = libxml_get_last_error()) + { + $this->error_code = $error->code; + $this->error_string = $error->message; + $this->current_line = $error->line; + $this->current_column = $error->column; + return false; + } + + return true; } public function get_error_code() @@ -473,7 +469,7 @@ class SimplePie_Parser $h_feed = $mf_item; break; } - // Also look for an h-feed in the children of each top level item. + // Also look for h-feed or h-entry in the children of each top level item. if (!isset($mf_item['children'][0]['type'])) continue; if (in_array('h-feed', $mf_item['children'][0]['type'])) { $h_feed = $mf_item['children'][0]; @@ -482,6 +478,13 @@ class SimplePie_Parser if (in_array('h-card', $mf_item['type'])) $feed_author = $mf_item; break; } + else if (in_array('h-entry', $mf_item['children'][0]['type'])) { + $entries = $mf_item['children']; + // In this case the parent of the h-entry list may be an h-card, so use + // it as the feed_author. + if (in_array('h-card', $mf_item['type'])) $feed_author = $mf_item; + break; + } } if (isset($h_feed['children'])) { $entries = $h_feed['children']; @@ -493,7 +496,7 @@ class SimplePie_Parser $feed_author = $mf['items'][0]['properties']['author'][0]; } } - else { + else if (count($entries) === 0) { $entries = $mf['items']; } for ($i = 0; $i < count($entries); $i++) { @@ -562,18 +565,21 @@ class SimplePie_Parser $photo_list = array(); for ($j = 0; $j < count($entry['properties']['photo']); $j++) { $photo = $entry['properties']['photo'][$j]; - if (strpos($content, $photo) === false) { + if (!empty($photo) && strpos($content, $photo) === false) { $photo_list[] = $photo; } } // When there's more than one photo show the first and use a lightbox. + // Need a permanent, unique name for the image set, but don't have + // anything unique except for the content itself, so use that. $count = count($photo_list); if ($count > 1) { + $image_set_id = preg_replace('/[[:^alnum:]]/', '', $photo_list[0]); $description = '<p>'; for ($j = 0; $j < $count; $j++) { $hidden = $j === 0 ? '' : 'class="hidden" '; $description .= '<a href="'.$photo_list[$j].'" '.$hidden. - 'data-lightbox="image-set-'.$i.'">'. + 'data-lightbox="image-set-'.$image_set_id.'">'. '<img src="'.$photo_list[$j].'"></a>'; } $description .= '<br><b>'.$count.' photos</b></p>'; @@ -591,10 +597,18 @@ class SimplePie_Parser $item['title'] = array(array('data' => $title)); } $description .= $entry['properties']['content'][0]['html']; - if (isset($entry['properties']['in-reply-to'][0]['value'])) { - $in_reply_to = $entry['properties']['in-reply-to'][0]['value']; - $description .= '<p><span class="in-reply-to"></span> '. - '<a href="'.$in_reply_to.'">'.$in_reply_to.'</a><p>'; + if (isset($entry['properties']['in-reply-to'][0])) { + $in_reply_to = ''; + if (is_string($entry['properties']['in-reply-to'][0])) { + $in_reply_to = $entry['properties']['in-reply-to'][0]; + } + else if (isset($entry['properties']['in-reply-to'][0]['value'])) { + $in_reply_to = $entry['properties']['in-reply-to'][0]['value']; + } + if ($in_reply_to !== '') { + $description .= '<p><span class="in-reply-to"></span> '. + '<a href="'.$in_reply_to.'">'.$in_reply_to.'</a><p>'; + } } $item['description'] = array(array('data' => $description)); } @@ -635,7 +649,7 @@ class SimplePie_Parser $image = array(array('child' => array('' => array('url' => array(array('data' => $feed_author['properties']['photo'][0])))))); } - // Use the a name given for the h-feed, or get the title from the html. + // Use the name given for the h-feed, or get the title from the html. if ($feed_title !== '') { $feed_title = array(array('data' => htmlspecialchars($feed_title))); } @@ -661,4 +675,4 @@ class SimplePie_Parser // html is allowed, but the xml specification says they must be declared. return '<!DOCTYPE html [ <!ENTITY nbsp " "> <!ENTITY iexcl "¡"> <!ENTITY cent "¢"> <!ENTITY pound "£"> <!ENTITY curren "¤"> <!ENTITY yen "¥"> <!ENTITY brvbar "¦"> <!ENTITY sect "§"> <!ENTITY uml "¨"> <!ENTITY copy "©"> <!ENTITY ordf "ª"> <!ENTITY laquo "«"> <!ENTITY not "¬"> <!ENTITY shy "­"> <!ENTITY reg "®"> <!ENTITY macr "¯"> <!ENTITY deg "°"> <!ENTITY plusmn "±"> <!ENTITY sup2 "²"> <!ENTITY sup3 "³"> <!ENTITY acute "´"> <!ENTITY micro "µ"> <!ENTITY para "¶"> <!ENTITY middot "·"> <!ENTITY cedil "¸"> <!ENTITY sup1 "¹"> <!ENTITY ordm "º"> <!ENTITY raquo "»"> <!ENTITY frac14 "¼"> <!ENTITY frac12 "½"> <!ENTITY frac34 "¾"> <!ENTITY iquest "¿"> <!ENTITY Agrave "À"> <!ENTITY Aacute "Á"> <!ENTITY Acirc "Â"> <!ENTITY Atilde "Ã"> <!ENTITY Auml "Ä"> <!ENTITY Aring "Å"> <!ENTITY AElig "Æ"> <!ENTITY Ccedil "Ç"> <!ENTITY Egrave "È"> <!ENTITY Eacute "É"> <!ENTITY Ecirc "Ê"> <!ENTITY Euml "Ë"> <!ENTITY Igrave "Ì"> <!ENTITY Iacute "Í"> <!ENTITY Icirc "Î"> <!ENTITY Iuml "Ï"> <!ENTITY ETH "Ð"> <!ENTITY Ntilde "Ñ"> <!ENTITY Ograve "Ò"> <!ENTITY Oacute "Ó"> <!ENTITY Ocirc "Ô"> <!ENTITY Otilde "Õ"> <!ENTITY Ouml "Ö"> <!ENTITY times "×"> <!ENTITY Oslash "Ø"> <!ENTITY Ugrave "Ù"> <!ENTITY Uacute "Ú"> <!ENTITY Ucirc "Û"> <!ENTITY Uuml "Ü"> <!ENTITY Yacute "Ý"> <!ENTITY THORN "Þ"> <!ENTITY szlig "ß"> <!ENTITY agrave "à"> <!ENTITY aacute "á"> <!ENTITY acirc "â"> <!ENTITY atilde "ã"> <!ENTITY auml "ä"> <!ENTITY aring "å"> <!ENTITY aelig "æ"> <!ENTITY ccedil "ç"> <!ENTITY egrave "è"> <!ENTITY eacute "é"> <!ENTITY ecirc "ê"> <!ENTITY euml "ë"> <!ENTITY igrave "ì"> <!ENTITY iacute "í"> <!ENTITY icirc "î"> <!ENTITY iuml "ï"> <!ENTITY eth "ð"> <!ENTITY ntilde "ñ"> <!ENTITY ograve "ò"> <!ENTITY oacute "ó"> <!ENTITY ocirc "ô"> <!ENTITY otilde "õ"> <!ENTITY ouml "ö"> <!ENTITY divide "÷"> <!ENTITY oslash "ø"> <!ENTITY ugrave "ù"> <!ENTITY uacute "ú"> <!ENTITY ucirc "û"> <!ENTITY uuml "ü"> <!ENTITY yacute "ý"> <!ENTITY thorn "þ"> <!ENTITY yuml "ÿ"> <!ENTITY OElig "Œ"> <!ENTITY oelig "œ"> <!ENTITY Scaron "Š"> <!ENTITY scaron "š"> <!ENTITY Yuml "Ÿ"> <!ENTITY fnof "ƒ"> <!ENTITY circ "ˆ"> <!ENTITY tilde "˜"> <!ENTITY Alpha "Α"> <!ENTITY Beta "Β"> <!ENTITY Gamma "Γ"> <!ENTITY Epsilon "Ε"> <!ENTITY Zeta "Ζ"> <!ENTITY Eta "Η"> <!ENTITY Theta "Θ"> <!ENTITY Iota "Ι"> <!ENTITY Kappa "Κ"> <!ENTITY Lambda "Λ"> <!ENTITY Mu "Μ"> <!ENTITY Nu "Ν"> <!ENTITY Xi "Ξ"> <!ENTITY Omicron "Ο"> <!ENTITY Pi "Π"> <!ENTITY Rho "Ρ"> <!ENTITY Sigma "Σ"> <!ENTITY Tau "Τ"> <!ENTITY Upsilon "Υ"> <!ENTITY Phi "Φ"> <!ENTITY Chi "Χ"> <!ENTITY Psi "Ψ"> <!ENTITY Omega "Ω"> <!ENTITY alpha "α"> <!ENTITY beta "β"> <!ENTITY gamma "γ"> <!ENTITY delta "δ"> <!ENTITY epsilon "ε"> <!ENTITY zeta "ζ"> <!ENTITY eta "η"> <!ENTITY theta "θ"> <!ENTITY iota "ι"> <!ENTITY kappa "κ"> <!ENTITY lambda "λ"> <!ENTITY mu "μ"> <!ENTITY nu "ν"> <!ENTITY xi "ξ"> <!ENTITY omicron "ο"> <!ENTITY pi "π"> <!ENTITY rho "ρ"> <!ENTITY sigmaf "ς"> <!ENTITY sigma "σ"> <!ENTITY tau "τ"> <!ENTITY upsilon "υ"> <!ENTITY phi "φ"> <!ENTITY chi "χ"> <!ENTITY psi "ψ"> <!ENTITY omega "ω"> <!ENTITY thetasym "ϑ"> <!ENTITY upsih "ϒ"> <!ENTITY piv "ϖ"> <!ENTITY ensp " "> <!ENTITY emsp " "> <!ENTITY thinsp " "> <!ENTITY zwnj "‌"> <!ENTITY zwj "‍"> <!ENTITY lrm "‎"> <!ENTITY rlm "‏"> <!ENTITY ndash "–"> <!ENTITY mdash "—"> <!ENTITY lsquo "‘"> <!ENTITY rsquo "’"> <!ENTITY sbquo "‚"> <!ENTITY ldquo "“"> <!ENTITY rdquo "”"> <!ENTITY bdquo "„"> <!ENTITY dagger "†"> <!ENTITY Dagger "‡"> <!ENTITY bull "•"> <!ENTITY hellip "…"> <!ENTITY permil "‰"> <!ENTITY prime "′"> <!ENTITY Prime "″"> <!ENTITY lsaquo "‹"> <!ENTITY rsaquo "›"> <!ENTITY oline "‾"> <!ENTITY frasl "⁄"> <!ENTITY euro "€"> <!ENTITY image "ℑ"> <!ENTITY weierp "℘"> <!ENTITY real "ℜ"> <!ENTITY trade "™"> <!ENTITY alefsym "ℵ"> <!ENTITY larr "←"> <!ENTITY uarr "↑"> <!ENTITY rarr "→"> <!ENTITY darr "↓"> <!ENTITY harr "↔"> <!ENTITY crarr "↵"> <!ENTITY lArr "⇐"> <!ENTITY uArr "⇑"> <!ENTITY rArr "⇒"> <!ENTITY dArr "⇓"> <!ENTITY hArr "⇔"> <!ENTITY forall "∀"> <!ENTITY part "∂"> <!ENTITY exist "∃"> <!ENTITY empty "∅"> <!ENTITY nabla "∇"> <!ENTITY isin "∈"> <!ENTITY notin "∉"> <!ENTITY ni "∋"> <!ENTITY prod "∏"> <!ENTITY sum "∑"> <!ENTITY minus "−"> <!ENTITY lowast "∗"> <!ENTITY radic "√"> <!ENTITY prop "∝"> <!ENTITY infin "∞"> <!ENTITY ang "∠"> <!ENTITY and "∧"> <!ENTITY or "∨"> <!ENTITY cap "∩"> <!ENTITY cup "∪"> <!ENTITY int "∫"> <!ENTITY there4 "∴"> <!ENTITY sim "∼"> <!ENTITY cong "≅"> <!ENTITY asymp "≈"> <!ENTITY ne "≠"> <!ENTITY equiv "≡"> <!ENTITY le "≤"> <!ENTITY ge "≥"> <!ENTITY sub "⊂"> <!ENTITY sup "⊃"> <!ENTITY nsub "⊄"> <!ENTITY sube "⊆"> <!ENTITY supe "⊇"> <!ENTITY oplus "⊕"> <!ENTITY otimes "⊗"> <!ENTITY perp "⊥"> <!ENTITY sdot "⋅"> <!ENTITY lceil "⌈"> <!ENTITY rceil "⌉"> <!ENTITY lfloor "⌊"> <!ENTITY rfloor "⌋"> <!ENTITY lang "〈"> <!ENTITY rang "〉"> <!ENTITY loz "◊"> <!ENTITY spades "♠"> <!ENTITY clubs "♣"> <!ENTITY hearts "♥"> <!ENTITY diams "♦"> ]>'; } -}
\ No newline at end of file +} diff --git a/lib/SimplePie/SimplePie/Rating.php b/lib/SimplePie/SimplePie/Rating.php index eaf57080c..108dd22bf 100644 --- a/lib/SimplePie/SimplePie/Rating.php +++ b/lib/SimplePie/SimplePie/Rating.php @@ -103,10 +103,8 @@ class SimplePie_Rating { return $this->scheme; } - else - { - return null; - } + + return null; } /** @@ -120,9 +118,7 @@ class SimplePie_Rating { return $this->value; } - else - { - return null; - } + + return null; } } diff --git a/lib/SimplePie/SimplePie/Restriction.php b/lib/SimplePie/SimplePie/Restriction.php index 001a5cd28..803d84fde 100644 --- a/lib/SimplePie/SimplePie/Restriction.php +++ b/lib/SimplePie/SimplePie/Restriction.php @@ -112,10 +112,8 @@ class SimplePie_Restriction { return $this->relationship; } - else - { - return null; - } + + return null; } /** @@ -129,10 +127,8 @@ class SimplePie_Restriction { return $this->type; } - else - { - return null; - } + + return null; } /** @@ -146,9 +142,7 @@ class SimplePie_Restriction { return $this->value; } - else - { - return null; - } + + return null; } } diff --git a/lib/SimplePie/SimplePie/Sanitize.php b/lib/SimplePie/SimplePie/Sanitize.php index c55ee50b7..8b7e57926 100644 --- a/lib/SimplePie/SimplePie/Sanitize.php +++ b/lib/SimplePie/SimplePie/Sanitize.php @@ -429,7 +429,7 @@ class SimplePie_Sanitize } else { - trigger_error("$this->cache_location is not writeable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING); + trigger_error("$this->cache_location is not writable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING); } } } diff --git a/lib/SimplePie/SimplePie/Source.php b/lib/SimplePie/SimplePie/Source.php index 1a66a392d..8fac13ef7 100644 --- a/lib/SimplePie/SimplePie/Source.php +++ b/lib/SimplePie/SimplePie/Source.php @@ -79,10 +79,8 @@ class SimplePie_Source { return $this->data['child'][$namespace][$tag]; } - else - { - return null; - } + + return null; } public function get_base($element = array()) @@ -130,10 +128,8 @@ class SimplePie_Source { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } public function get_category($key = 0) @@ -143,10 +139,8 @@ class SimplePie_Source { return $categories[$key]; } - else - { - return null; - } + + return null; } public function get_categories() @@ -200,10 +194,8 @@ class SimplePie_Source { return array_unique($categories); } - else - { - return null; - } + + return null; } public function get_author($key = 0) @@ -213,10 +205,8 @@ class SimplePie_Source { return $authors[$key]; } - else - { - return null; - } + + return null; } public function get_authors() @@ -283,10 +273,8 @@ class SimplePie_Source { return array_unique($authors); } - else - { - return null; - } + + return null; } public function get_contributor($key = 0) @@ -296,10 +284,8 @@ class SimplePie_Source { return $contributors[$key]; } - else - { - return null; - } + + return null; } public function get_contributors() @@ -354,10 +340,8 @@ class SimplePie_Source { return array_unique($contributors); } - else - { - return null; - } + + return null; } public function get_link($key = 0, $rel = 'alternate') @@ -367,10 +351,8 @@ class SimplePie_Source { return $links[$key]; } - else - { - return null; - } + + return null; } /** @@ -449,10 +431,8 @@ class SimplePie_Source { return $this->data['links'][$rel]; } - else - { - return null; - } + + return null; } public function get_description() @@ -493,10 +473,8 @@ class SimplePie_Source { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_HTML, $this->get_base($return[0])); } - else - { - return null; - } + + return null; } public function get_copyright() @@ -521,10 +499,8 @@ class SimplePie_Source { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } public function get_language() @@ -545,10 +521,8 @@ class SimplePie_Source { return $this->sanitize($this->data['xml_lang'], SIMPLEPIE_CONSTRUCT_TEXT); } - else - { - return null; - } + + return null; } public function get_latitude() @@ -561,10 +535,8 @@ class SimplePie_Source { return (float) $match[1]; } - else - { - return null; - } + + return null; } public function get_longitude() @@ -581,10 +553,8 @@ class SimplePie_Source { return (float) $match[2]; } - else - { - return null; - } + + return null; } public function get_image_url() @@ -601,10 +571,7 @@ class SimplePie_Source { return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($return[0])); } - else - { - return null; - } + + return null; } } - diff --git a/lib/SimplePie/SimplePie/XML/Declaration/Parser.php b/lib/SimplePie/SimplePie/XML/Declaration/Parser.php index 99e751672..18ca1b79b 100644 --- a/lib/SimplePie/SimplePie/XML/Declaration/Parser.php +++ b/lib/SimplePie/SimplePie/XML/Declaration/Parser.php @@ -136,13 +136,11 @@ class SimplePie_XML_Declaration_Parser { return true; } - else - { - $this->version = ''; - $this->encoding = ''; - $this->standalone = ''; - return false; - } + + $this->version = ''; + $this->encoding = ''; + $this->standalone = ''; + return false; } /** diff --git a/lib/SimplePie/SimplePie/gzdecode.php b/lib/SimplePie/SimplePie/gzdecode.php index 0e8bc8fc6..f4aeafa28 100644 --- a/lib/SimplePie/SimplePie/gzdecode.php +++ b/lib/SimplePie/SimplePie/gzdecode.php @@ -338,10 +338,8 @@ class SimplePie_gzdecode { return false; } - else - { - $this->position = $this->compressed_size - 8; - } + + $this->position = $this->compressed_size - 8; // Check CRC of data $crc = current(unpack('V', substr($this->compressed_data, $this->position, 4))); @@ -362,9 +360,7 @@ class SimplePie_gzdecode // Wow, against all odds, we've actually got a valid gzip string return true; } - else - { - return false; - } + + return false; } } |
