Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 63ee8a1a7d39228e31d3f00a78fa8eef52909609
      
https://github.com/WebKit/WebKit/commit/63ee8a1a7d39228e31d3f00a78fa8eef52909609
  Author: Youenn Fablet <[email protected]>
  Date:   2026-08-26 (Wed, 26 Aug 2026)

  Changed paths:
    A 
LayoutTests/http/wpt/cache-storage/cache-put-opaque-response-race-expected.txt
    A LayoutTests/http/wpt/cache-storage/cache-put-opaque-response-race.html
    M Source/WebCore/Modules/cache/CacheStorageConnection.cpp
    M Source/WebCore/Modules/cache/CacheStorageConnection.h

  Log Message:
  -----------
  Unsynchronized cross-thread access to m_opaqueResponseToSizeWithPaddingMap in 
CacheStorageConnection::computeRecordBodySize
rdar://177953125

Reviewed by Chris Dumez.

We add a lock and the related lock assertions to prevent unlocked access to the 
map.
Given the potential locking that may happen for form data size computation, we 
make sure to compute the response real size outside of the lock.

Test: http/wpt/cache-storage/cache-put-opaque-response-race.html

* 
LayoutTests/http/wpt/cache-storage/cache-put-opaque-response-race-expected.txt: 
Added.
* LayoutTests/http/wpt/cache-storage/cache-put-opaque-response-race.html: Added.
* Source/WebCore/Modules/cache/CacheStorageConnection.cpp:
(WebCore::CacheStorageConnection::computeRecordBodySize):
* Source/WebCore/Modules/cache/CacheStorageConnection.h:

Originally-landed-as: [email protected] (4c69ed8ad988). 
rdar://185368026
Canonical link: https://commits.webkit.org/319865@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to