projects
/
tweeper.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tweeper.php: check curl_exec() return value
[tweeper.git]
/
tweeper.php
diff --git
a/tweeper.php
b/tweeper.php
index
579aae1
..
b1809ed
100644
(file)
--- a/
tweeper.php
+++ b/
tweeper.php
@@
-89,6
+89,9
@@
class Tweeper {
CURLOPT_USERAGENT => Tweeper::$userAgent,
));
$contents = curl_exec($ch);
CURLOPT_USERAGENT => Tweeper::$userAgent,
));
$contents = curl_exec($ch);
+ if (FALSE === $contents) {
+ trigger_error(curl_error($ch));
+ }
curl_close($ch);
return $contents;
curl_close($ch);
return $contents;
@@
-111,6
+114,9
@@
class Tweeper {
));
curl_exec($ch);
$url_info = curl_getinfo($ch);
));
curl_exec($ch);
$url_info = curl_getinfo($ch);
+ if (FALSE === $url_info) {
+ trigger_error(curl_error($ch));
+ }
curl_close($ch);
return $url_info;
curl_close($ch);
return $url_info;
@@
-121,7
+127,9
@@
class Tweeper {
*/
public static function generateEnclosure($url) {
$supported_content_types = array(
*/
public static function generateEnclosure($url) {
$supported_content_types = array(
+ "application/octet-stream",
"application/ogg",
"application/ogg",
+ "application/pdf",
"audio/aac",
"audio/mp4",
"audio/mpeg",
"audio/aac",
"audio/mp4",
"audio/mpeg",
@@
-132,17
+140,14
@@
class Tweeper {
"audio/x-midi",
"image/gif",
"image/jpeg",
"audio/x-midi",
"image/gif",
"image/jpeg",
+ "image/png",
"video/avi",
"video/mp4",
"video/mpeg",
"video/ogg",
);
"video/avi",
"video/mp4",
"video/mpeg",
"video/ogg",
);
- // The RSS specification says that the enclosure element URL must be http.
- // See http://sourceforge.net/p/feedvalidator/bugs/72/
- $http_url = preg_replace("/^https/", "http", $url);
-
- $url_info = Tweeper::getUrlInfo($http_url);
+ $url_info = Tweeper::getUrlInfo($url);
$supported = in_array($url_info['content_type'], $supported_content_types);
if (!$supported) {
$supported = in_array($url_info['content_type'], $supported_content_types);
if (!$supported) {
@@
-150,9
+155,13
@@
class Tweeper {
return '';
}
return '';
}
- $dom = new DomDocument();
+ // The RSS specification says that the enclosure element URL must be http.
+ // See http://sourceforge.net/p/feedvalidator/bugs/72/
+ $http_url = preg_replace("/^https/", "http", $url_info['url']);
+
+ $dom = new DOMDocument();
$enc = $dom->createElement('enclosure');
$enc = $dom->createElement('enclosure');
- $enc->setAttribute('url', $
url_info['url']
);
+ $enc->setAttribute('url', $
http_url
);
$enc->setAttribute('length', $url_info['download_content_length']);
$enc->setAttribute('type', $url_info['content_type']);
$enc->setAttribute('length', $url_info['download_content_length']);
$enc->setAttribute('type', $url_info['content_type']);