mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 17:17:44 +00:00
LibWebView: Avoid trying to break a schemeless URL into renderable parts
This commit is contained in:
parent
65a9eae142
commit
965bd00cf3
2 changed files with 9 additions and 1 deletions
|
@ -24,6 +24,10 @@ TEST_CASE(invalid_url)
|
||||||
EXPECT(!WebView::break_url_into_parts(":/"sv).has_value());
|
EXPECT(!WebView::break_url_into_parts(":/"sv).has_value());
|
||||||
EXPECT(!WebView::break_url_into_parts("://"sv).has_value());
|
EXPECT(!WebView::break_url_into_parts("://"sv).has_value());
|
||||||
|
|
||||||
|
EXPECT(!WebView::break_url_into_parts("/"sv).has_value());
|
||||||
|
EXPECT(!WebView::break_url_into_parts("//"sv).has_value());
|
||||||
|
EXPECT(!WebView::break_url_into_parts("/h"sv).has_value());
|
||||||
|
|
||||||
EXPECT(!WebView::break_url_into_parts("f"sv).has_value());
|
EXPECT(!WebView::break_url_into_parts("f"sv).has_value());
|
||||||
EXPECT(!WebView::break_url_into_parts("fi"sv).has_value());
|
EXPECT(!WebView::break_url_into_parts("fi"sv).has_value());
|
||||||
EXPECT(!WebView::break_url_into_parts("fil"sv).has_value());
|
EXPECT(!WebView::break_url_into_parts("fil"sv).has_value());
|
||||||
|
|
|
@ -144,7 +144,11 @@ Optional<URLParts> break_url_into_parts(StringView url_string)
|
||||||
if (!url.is_valid())
|
if (!url.is_valid())
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
auto scheme_length = url.scheme().bytes_as_string_view().length();
|
auto const& scheme = url.scheme();
|
||||||
|
auto scheme_length = scheme.bytes_as_string_view().length();
|
||||||
|
|
||||||
|
if (!url_string.starts_with(scheme))
|
||||||
|
return {};
|
||||||
if (!url_string.substring_view(scheme_length).starts_with("://"sv))
|
if (!url_string.substring_view(scheme_length).starts_with("://"sv))
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue