[webkit-changes] [WebKit/WebKit] 37b8e7: Make DOMCacheIdentifier process qualified

youennf noreply at github.com
Thu Sep 28 04:42:58 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 37b8e71720738dbcfc6fd5096e05d26088a5de6f
      https://github.com/WebKit/WebKit/commit/37b8e71720738dbcfc6fd5096e05d26088a5de6f
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2023-09-28 (Thu, 28 Sep 2023)

  Changed paths:
    M Source/WebCore/Modules/cache/DOMCacheIdentifier.h
    M Source/WebKit/NetworkProcess/cache/CacheStorageEngineConnection.cpp
    M Source/WebKit/Scripts/webkit/messages.py
    M Source/WebKit/Scripts/webkit/tests/MessageArgumentDescriptions.cpp
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm

  Log Message:
  -----------
  Make DOMCacheIdentifier process qualified
https://bugs.webkit.org/show_bug.cgi?id=262171
rdar://116110555

Reviewed by Sihui Liu.

DOMCacheIdentifier is used to reference/dereference DOMCaches living in networking process based on DOMCache JS objects in web processes.
In case network process crashes, the previous identifiers might be used to dereference unrelated DOMCaches.
To prevent this, we make DOMCacheIdentifier process qualified as a new networking process will most probably not have the same identifier.

* Source/WebCore/Modules/cache/DOMCacheIdentifier.h:
* Source/WebKit/NetworkProcess/cache/CacheStorageEngineConnection.cpp:
(WebKit::CacheStorageEngineConnection::open):
(WebKit::CacheStorageEngineConnection::remove):
(WebKit::CacheStorageEngineConnection::retrieveRecords):
(WebKit::CacheStorageEngineConnection::deleteMatchingRecords):
(WebKit::CacheStorageEngineConnection::putRecords):
(WebKit::CacheStorageEngineConnection::reference):
(WebKit::CacheStorageEngineConnection::dereference):
* Source/WebKit/Scripts/webkit/messages.py:
(serialized_identifiers):
(types_that_cannot_be_forward_declared):
* Source/WebKit/Scripts/webkit/tests/MessageArgumentDescriptions.cpp:
(IPC::serializedIdentifiers):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:

Canonical link: https://commits.webkit.org/268577@main




More information about the webkit-changes mailing list