summaryrefslogtreecommitdiff
path: root/functions.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2009-03-04 14:06:15 +0300
committerAndrew Dolgov <[email protected]>2009-03-04 14:06:15 +0300
commit107008cb15b0679f7c6c0d3f264231e0f098745f (patch)
tree3c95edb5685f89b74172f7e1d8e3600caa26dd6e /functions.php
parent14d9001eca82103d3dcd493bb1cf95207f7418b3 (diff)
add patch for better favicon fetching (closes #231)
Diffstat (limited to 'functions.php')
-rw-r--r--functions.php12
1 files changed, 8 insertions, 4 deletions
diff --git a/functions.php b/functions.php
index 648ab3438..60a4a4bfd 100644
--- a/functions.php
+++ b/functions.php
@@ -395,10 +395,14 @@
$faviconURL = $urlParts['scheme'].'://'.$urlParts['host'].$linkUrl;
} else if (substr($linkUrl, 0, 7) == 'http://') {
$faviconURL = $linkUrl;
- } else if (substr($url, -1, 1) == '/') {
- $faviconURL = $url.$linkUrl;
} else {
- $faviconURL = $url.'/'.$linkUrl;
+ $pos = strrpos($url, "/");
+ // no "/" in url or "/" is part of "://"
+ if ($pos === false || $pos == (strpos($url, "://")+2)) {
+ $faviconURL = $url.'/'.$linkUrl;
+ } else {
+ $faviconURL = substr($url, 0, $pos+1).$linkUrl;
+ }
}
} else {
@@ -454,7 +458,7 @@
$http_response = fgets( $socket, 22 );
- $responses = "/(200 OK)|(30[0-9] Moved)/";
+ $responses = "/(200 OK)|(30[123])/";
if ( preg_match($responses, $http_response) ) {
fclose($socket);
return true;