ladybird/Userland
Timothy Flynn 693af180dd LibWebView: Ensure manually expired cookies are purged from the database
Cookies are typically deleted by setting their expiry time to an ancient
time stamp (i.e. this is how WebDriver is required to delete cookies).

Previously, we would update the cookie in the cookie jar, which would
mark the cookie as dirty. We would then purge expired cookies from the
jar's transient storage, which removed the cookie from the dirty list.
If the cookie was also in the persisted storage, it would never become
expired there as it was no longer in the dirty list when the timer for
synchronization fired.

Now, we don't remove any cookies from the transient dirty list when we
purge expired cookies. We hold onto the dirty cookie until sync time,
where we now update the cookie in the persisted storage *before* we
delete expired cookies.
2024-09-07 11:10:27 +02:00
..
Libraries LibWebView: Ensure manually expired cookies are purged from the database 2024-09-07 11:10:27 +02:00
Services LibWeb/WebDriver: Align execute script methods with the specification 2024-09-06 09:54:16 +02:00
Utilities LibWebView+UI: Move the database and cookie jar to WebView::Application 2024-09-05 19:45:47 -04:00