From df80913747795e330af5c90e6d1b782b3d6d8f07 Mon Sep 17 00:00:00 2001 From: vrachnis Date: Thu, 25 May 2023 08:27:52 +0100 Subject: Fix favicon fetching while using proxies (#5421) * Fix favicon fetching while using proxies This ensures that if curl_options are defined in config.php, those settings are respected while fetching favicons. Fixes FreshRSS#4951 * Change options priority * Credits keep alphabticorder --------- Co-authored-by: Alexandre Alapetite --- lib/favicons.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/favicons.php b/lib/favicons.php index 960a72afc..b5c70d975 100644 --- a/lib/favicons.php +++ b/lib/favicons.php @@ -28,7 +28,7 @@ function isImgMime(string $content): bool { function downloadHttp(string &$url, array $curlOptions = []): string { syslog(LOG_INFO, 'FreshRSS Favicon GET ' . $url); $url = checkUrl($url); - if (!$url) { + if ($url == false) { return ''; } /** @var CurlHandle $ch */ @@ -41,9 +41,19 @@ function downloadHttp(string &$url, array $curlOptions = []): string { CURLOPT_FOLLOWLOCATION => true, CURLOPT_ENCODING => '', //Enable all encodings ]); + + FreshRSS_Context::initSystem(); + $system_conf = FreshRSS_Context::$system_conf; + if (isset($system_conf)) { + curl_setopt_array($ch, $system_conf->curl_options); + } + curl_setopt_array($ch, $curlOptions); - /** @var string $response */ + $response = curl_exec($ch); + if (!is_string($response)) { + $response = ''; + } $info = curl_getinfo($ch); curl_close($ch); if (!empty($info['url'])) { -- cgit v1.2.3