]> git.mxchange.org Git - friendica.git/blobdiff - src/Util/Network.php
Merge pull request #13648 from annando/picture-upload
[friendica.git] / src / Util / Network.php
index e02767be4a950acc7c8c646443ce1f4531cfc9fc..495510189f1a2a849f61d69ce9aacbc283750b3d 100644 (file)
@@ -79,11 +79,19 @@ class Network
 
                if (in_array(parse_url($url, PHP_URL_SCHEME), ['https', 'http'])) {
                        $options = [HttpClientOptions::VERIFY => true, HttpClientOptions::TIMEOUT => $xrd_timeout];
-                       $curlResult = DI::httpClient()->head($url, $options);
+                       try {
+                               $curlResult = DI::httpClient()->head($url, $options);
+                       } catch (\Exception $e) {
+                               return false;
+                       }
 
                        // Workaround for systems that can't handle a HEAD request. Don't retry on timeouts.
                        if (!$curlResult->isSuccess() && ($curlResult->getReturnCode() >= 400) && !in_array($curlResult->getReturnCode(), [408, 504])) {
-                               $curlResult = DI::httpClient()->get($url, HttpClientAccept::DEFAULT, $options);
+                               try {
+                                       $curlResult = DI::httpClient()->get($url, HttpClientAccept::DEFAULT, $options);
+                               } catch (\Exception $e) {
+                                       return false;
+                               }
                        }
 
                        if (!$curlResult->isSuccess()) {
@@ -632,10 +640,11 @@ class Network
         * @param string $url
         *
         * @return bool
+        * @deprecated since 2023.09, please use BaseUrl->isLocalUrl or BaseUrl->isLocalUri instead.
         */
        public static function isLocalLink(string $url): bool
        {
-               return (strpos(Strings::normaliseLink($url), Strings::normaliseLink(DI::baseUrl())) !== false);
+               return DI::baseUrl()->isLocalUrl($url);
        }
 
        /**