Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5bc131992783cd2f65a8e2ed0c827eaef6df1427 https://github.com/WebKit/WebKit/commit/5bc131992783cd2f65a8e2ed0c827eaef6df1427 Author: Sihui Liu <sihui_...@apple.com> Date: 2022-11-18 (Fri, 18 Nov 2022)
Changed paths: M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.messages.in M Source/WebKit/WebProcess/WebStorage/StorageAreaMap.cpp M Source/WebKit/WebProcess/WebStorage/StorageAreaMap.h Log Message: ----------- REGRESSION (iOS 16): LocalStorage is cleared after quota error https://bugs.webkit.org/show_bug.cgi?id=245479 rdar://problem/100252023 Reviewed by Chris Dumez. StorageAreaMap should sync with backend again instead of clearing map when an error occurs in backend. Also, all synchronization should not remove pending changes from map, because backend will handle the requests and StorageAreaMap will receive reply for pending requests after that. Until StorageAreaMap receives error in reply, it should assume the request succeeds and report value in pending requests to client. * Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp: (WebKit::NetworkStorageManager::setItem): * Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h: * Source/WebKit/NetworkProcess/storage/NetworkStorageManager.messages.in: * Source/WebKit/WebProcess/WebStorage/StorageAreaMap.cpp: (WebKit::StorageAreaMap::setItem): (WebKit::StorageAreaMap::clear): (WebKit::StorageAreaMap::ensureMap): (WebKit::StorageAreaMap::didSetItem): (WebKit::StorageAreaMap::applyChange): (WebKit::StorageAreaMap::clearCache): (WebKit::StorageAreaMap::disconnect): (WebKit::StorageAreaMap::syncOneItem): (WebKit::StorageAreaMap::syncItems): (WebKit::StorageAreaMap::resetValues): Deleted. (WebKit::StorageAreaMap::shouldApplyChangeForKey const): Deleted. * Source/WebKit/WebProcess/WebStorage/StorageAreaMap.h: Canonical link: https://commits.webkit.org/256863@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes