X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FPost%2FLink.php;h=87bc457524ede28dcb820b086dfbad969be5c74e;hb=f81192b4c3838480154301ac25cbbbed58593380;hp=aa830a1d28261ed69c9242573060e07c36ad112f;hpb=4faf08c0643d3e6bbe2a0a77be2ff8c1dbea4d5c;p=friendica.git diff --git a/src/Model/Post/Link.php b/src/Model/Post/Link.php index aa830a1d28..87bc457524 100644 --- a/src/Model/Post/Link.php +++ b/src/Model/Post/Link.php @@ -22,7 +22,6 @@ namespace Friendica\Model\Post; use Friendica\Core\Logger; -use Friendica\Core\System; use Friendica\Database\Database; use Friendica\Database\DBA; use Friendica\DI; @@ -58,7 +57,7 @@ class Link * @param int $uriId * @param string $url * @param string $size - * @return string Found link URL + id on success, $url on failture + * @return string Found link URL + id on success, $url on failure */ public static function getByLink(int $uriId, string $url, string $size = ''): string { @@ -67,7 +66,7 @@ class Link } if (!in_array(parse_url($url, PHP_URL_SCHEME), ['http', 'https'])) { - Logger::info('Bad URL, quitting', ['uri-id' => $uriId, 'url' => $url, 'callstack' => System::callstack(20)]); + Logger::info('Bad URL, quitting', ['uri-id' => $uriId, 'url' => $url]); return $url; } @@ -125,8 +124,13 @@ class Link { $timeout = DI::config()->get('system', 'xrd_timeout'); - $curlResult = HTTPSignature::fetchRaw($url, 0, [HttpClientOptions::TIMEOUT => $timeout, HttpClientOptions::ACCEPT_CONTENT => $accept]); - if (!$curlResult->isSuccess()) { + try { + $curlResult = HTTPSignature::fetchRaw($url, 0, [HttpClientOptions::TIMEOUT => $timeout, HttpClientOptions::ACCEPT_CONTENT => $accept]); + if (empty($curlResult) || !$curlResult->isSuccess()) { + return []; + } + } catch (\Exception $exception) { + Logger::notice('Error fetching url', ['url' => $url, 'exception' => $exception]); return []; } $fields = ['mimetype' => $curlResult->getHeader('Content-Type')[0]];