mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 05:07:35 +00:00
Browser+LibWebView+WebContent: Do not domain match on cookie updates
Updating cookies through these hooks happens in one of two manners: 1. Through the Browser's storage inspector. 2. Through WebDriver's delete-cookies operation. In (1), we should not restrict ourselves to being able to delete cookies for the current page. For example, it's handy to open the inspector from the welcome page and be able to delete cookies for any domain. In (2), we already are only interacting with cookies that have been matched against the document URL.
This commit is contained in:
parent
949f5460fb
commit
bf060adcf9
15 changed files with 22 additions and 30 deletions
|
@ -359,9 +359,9 @@ void PageHost::page_did_set_cookie(const URL& url, Web::Cookie::ParsedCookie con
|
|||
m_client.async_did_set_cookie(url, cookie, static_cast<u8>(source));
|
||||
}
|
||||
|
||||
void PageHost::page_did_update_cookie(URL const& url, Web::Cookie::Cookie cookie)
|
||||
void PageHost::page_did_update_cookie(Web::Cookie::Cookie cookie)
|
||||
{
|
||||
m_client.async_did_update_cookie(url, move(cookie));
|
||||
m_client.async_did_update_cookie(move(cookie));
|
||||
}
|
||||
|
||||
void PageHost::page_did_update_resource_count(i32 count_waiting)
|
||||
|
|
|
@ -92,7 +92,7 @@ private:
|
|||
virtual Optional<Web::Cookie::Cookie> page_did_request_named_cookie(URL const&, DeprecatedString const&) override;
|
||||
virtual DeprecatedString page_did_request_cookie(const URL&, Web::Cookie::Source) override;
|
||||
virtual void page_did_set_cookie(const URL&, Web::Cookie::ParsedCookie const&, Web::Cookie::Source) override;
|
||||
virtual void page_did_update_cookie(URL const&, Web::Cookie::Cookie) override;
|
||||
virtual void page_did_update_cookie(Web::Cookie::Cookie) override;
|
||||
virtual void page_did_update_resource_count(i32) override;
|
||||
virtual void request_file(NonnullRefPtr<Web::FileRequest>&) override;
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ endpoint WebContentClient
|
|||
did_request_named_cookie(URL url, DeprecatedString name) => (Optional<Web::Cookie::Cookie> cookie)
|
||||
did_request_cookie(URL url, u8 source) => (DeprecatedString cookie)
|
||||
did_set_cookie(URL url, Web::Cookie::ParsedCookie cookie, u8 source) =|
|
||||
did_update_cookie(URL url, Web::Cookie::Cookie cookie) =|
|
||||
did_update_cookie(Web::Cookie::Cookie cookie) =|
|
||||
did_update_resource_count(i32 count_waiting) =|
|
||||
did_request_restore_window() =|
|
||||
did_request_reposition_window(Gfx::IntPoint position) => (Gfx::IntPoint window_position)
|
||||
|
|
|
@ -1752,7 +1752,7 @@ void WebDriverConnection::delete_cookies(Optional<StringView> const& name)
|
|||
if (!name.has_value() || name.value() == cookie.name) {
|
||||
// Set the cookie expiry time to a Unix timestamp in the past.
|
||||
cookie.expiry_time = Core::DateTime::from_timestamp(0);
|
||||
m_page_client.page_did_update_cookie(document->url(), move(cookie));
|
||||
m_page_client.page_did_update_cookie(move(cookie));
|
||||
}
|
||||
// -> Otherwise
|
||||
// Do nothing.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue