| Summary: | Session storage items were automatically cleared after manually changing the URL (only reproducible when the dev tool panel is not opened) | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Dmytro <19927> | ||||
| Component: | Website Storage | Assignee: | Nobody <webkit-unassigned> | ||||
| Status: | NEW --- | ||||||
| Severity: | Major | CC: | cdumez, dan, pangle, sihui_liu, webkit-bug-importer | ||||
| Priority: | P2 | Keywords: | InRadar | ||||
| Version: | Safari 15 | ||||||
| Hardware: | All | ||||||
| OS: | macOS 12 | ||||||
| Attachments: |
|
||||||
Presumably this is about when Safari and WebKit decide to swap underlying processes, which is not too surprising to be different when Web Inspector is open. On one hand, it's not great to have different behaviors when Web Inspector is open and when it isn't. But on another hand, preserving SessionStorage seems to make sense in a debugging workflow, where people reload a lot. I just ran into this issue as well. It can also be reproduced with the example created by Florian Schoppmann for bug #199928 With developer tools closed: - Go to https://fschopp.github.io/safari-local-storage-bug/ - Click the link in step 1 (this now works correctly) - Command + l to enter the location bar - Click enter to request the same URL again - sessionStorage has now been deleted and the example fails again |
Created attachment 455492 [details] example of the issue Preconditions: Do not open the developer tool panel. Steps to reproduce: 1) Try to add a key-value item to the session storage on your resource. 2) Change URL path to another route, or just CTRL+C - CTRL+V current one. 3) Check out the created session storage item. It's not present anymore. It's curious, that the browser does not clear the items if the dev tool is open, but only without a panel.