diff options
author | Andrew Dolgov <[email protected]> | 2009-03-04 14:06:15 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2009-03-04 14:06:15 +0300 |
commit | 107008cb15b0679f7c6c0d3f264231e0f098745f (patch) | |
tree | 3c95edb5685f89b74172f7e1d8e3600caa26dd6e | |
parent | 14d9001eca82103d3dcd493bb1cf95207f7418b3 (diff) |
add patch for better favicon fetching (closes #231)
-rw-r--r-- | functions.php | 12 |
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; |