From 6f1710121d2f0ad340470bb2ca8fb70027f82b33 Mon Sep 17 00:00:00 2001 From: Timothy Flynn Date: Sat, 29 Mar 2025 08:54:51 -0400 Subject: [PATCH] LibWeb: Remove OOM handling from the AutoplayAllowlist --- .../LibWeb/PermissionsPolicy/AutoplayAllowlist.cpp | 12 +++++------- .../LibWeb/PermissionsPolicy/AutoplayAllowlist.h | 2 +- Services/WebContent/ConnectionFromClient.cpp | 2 +- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.cpp b/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.cpp index 06cf43ab5ef..79321161a13 100644 --- a/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.cpp +++ b/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023, Tim Flynn + * Copyright (c) 2023-2025, Tim Flynn * * SPDX-License-Identifier: BSD-2-Clause */ @@ -66,27 +66,25 @@ void AutoplayAllowlist::enable_globally() m_allowlist = Global {}; } -ErrorOr AutoplayAllowlist::enable_for_origins(ReadonlySpan origins) +void AutoplayAllowlist::enable_for_origins(ReadonlySpan origins) { m_allowlist = Patterns {}; auto& allowlist = m_allowlist->get(); - TRY(allowlist.try_ensure_capacity(origins.size())); + allowlist.ensure_capacity(origins.size()); for (auto const& origin : origins) { auto url = URL::Parser::basic_parse(origin); if (!url.has_value()) - url = URL::Parser::basic_parse(TRY(String::formatted("https://{}", origin))); + url = URL::Parser::basic_parse(MUST(String::formatted("https://{}", origin))); if (!url.has_value()) { dbgln("Invalid origin for autoplay allowlist: {}", origin); continue; } - TRY(allowlist.try_append(url->origin())); + allowlist.append(url->origin()); } - - return {}; } } diff --git a/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.h b/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.h index 9690524c39a..2c2929eec0b 100644 --- a/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.h +++ b/Libraries/LibWeb/PermissionsPolicy/AutoplayAllowlist.h @@ -22,7 +22,7 @@ public: Decision is_allowed_for_origin(DOM::Document const&, URL::Origin const&) const; void enable_globally(); - ErrorOr enable_for_origins(ReadonlySpan); + void enable_for_origins(ReadonlySpan); private: AutoplayAllowlist(); diff --git a/Services/WebContent/ConnectionFromClient.cpp b/Services/WebContent/ConnectionFromClient.cpp index 1c1fffd176a..e7db5e753f6 100644 --- a/Services/WebContent/ConnectionFromClient.cpp +++ b/Services/WebContent/ConnectionFromClient.cpp @@ -1066,7 +1066,7 @@ void ConnectionFromClient::set_autoplay_allowed_on_all_websites(u64) void ConnectionFromClient::set_autoplay_allowlist(u64, Vector allowlist) { auto& autoplay_allowlist = Web::PermissionsPolicy::AutoplayAllowlist::the(); - autoplay_allowlist.enable_for_origins(allowlist).release_value_but_fixme_should_propagate_errors(); + autoplay_allowlist.enable_for_origins(allowlist); } void ConnectionFromClient::set_proxy_mappings(u64, Vector proxies, HashMap mappings)