From 5fe283a2a7f8a8728d6217bda18dd849d7f796b0 Mon Sep 17 00:00:00 2001 From: flashwave Date: Wed, 25 Jan 2023 13:04:13 +0000 Subject: [PATCH] Check for valid scheme in YouTube and Twitter URLs. --- src/Lookup/TwitterLookup.php | 2 +- src/Lookup/YouTubeLookup.php | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Lookup/TwitterLookup.php b/src/Lookup/TwitterLookup.php index 4b78f49..4301598 100644 --- a/src/Lookup/TwitterLookup.php +++ b/src/Lookup/TwitterLookup.php @@ -14,7 +14,7 @@ final class TwitterLookup implements \Uiharu\ILookup { ]; public function match(Url $url): bool { - if(!in_array($url->getHost(), self::TWITTER_DOMAINS)) + if(!$url->isWeb() || !in_array($url->getHost(), self::TWITTER_DOMAINS)) return false; return preg_match('#^/@?(?:[A-Za-z0-9_]{1,20})/status(?:es)?/([0-9]+)/?$#', $url->getPath()) diff --git a/src/Lookup/YouTubeLookup.php b/src/Lookup/YouTubeLookup.php index 6414b0a..a90926d 100644 --- a/src/Lookup/YouTubeLookup.php +++ b/src/Lookup/YouTubeLookup.php @@ -36,6 +36,9 @@ final class YouTubeLookup implements \Uiharu\ILookup { } public function match(Url $url): bool { + if(!$url->isWeb()) + return false; + $urlHost = $url->getHost(); if(self::isShortDomain($urlHost)) return true;