Changeset 285179 in webkit
- Timestamp:
- Nov 2, 2021, 1:44:33 PM (5 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
WebProcess/WebPage/WebPage.cpp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r285177 r285179 1 2021-11-02 Chris Dumez <cdumez@apple.com> 2 3 Crash under WebPage::sendCOEPCORPViolation() 4 https://bugs.webkit.org/show_bug.cgi?id=232631 5 <rdar://84919898> 6 7 Reviewed by Alex Christensen. 8 9 Add missing null checks for the frame after calling `WebProcess::singleton().webFrame(frameID)`. 10 11 * WebProcess/WebPage/WebPage.cpp: 12 (WebKit::WebPage::sendCOEPPolicyInheritenceViolation): 13 (WebKit::WebPage::sendCOEPCORPViolation): 14 (WebKit::WebPage::sendViolationReportWhenNavigatingToCOOPResponse): 15 (WebKit::WebPage::sendViolationReportWhenNavigatingAwayFromCOOPResponse): 16 1 17 2021-11-02 Sihui Liu <sihui_liu@apple.com> 2 18 -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
r285089 r285179 4320 4320 void WebPage::sendCOEPPolicyInheritenceViolation(FrameIdentifier frameID, const SecurityOriginData& embedderOrigin, const String& endpoint, COEPDisposition disposition, const String& type, const URL& blockedURL) 4321 4321 { 4322 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame ->coreFrame())4322 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame && frame->coreFrame()) 4323 4323 WebCore::sendCOEPPolicyInheritenceViolation(*frame->coreFrame(), embedderOrigin, endpoint, disposition, type, blockedURL); 4324 4324 } … … 4326 4326 void WebPage::sendCOEPCORPViolation(FrameIdentifier frameID, const SecurityOriginData& embedderOrigin, const String& endpoint, COEPDisposition disposition, FetchOptions::Destination destination, const URL& blockedURL) 4327 4327 { 4328 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame ->coreFrame())4328 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame && frame->coreFrame()) 4329 4329 WebCore::sendCOEPCORPViolation(*frame->coreFrame(), embedderOrigin, endpoint, disposition, destination, blockedURL); 4330 4330 } … … 4339 4339 return; 4340 4340 4341 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame ->coreFrame())4341 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame && frame->coreFrame()) 4342 4342 WebCore::sendViolationReportWhenNavigatingToCOOPResponse(*frame->coreFrame(), coop, disposition, coopURL, previousResponseURL, coopOrigin.securityOrigin(), previousResponseOrigin.securityOrigin(), referrer, userAgent); 4343 4343 } … … 4349 4349 return; 4350 4350 4351 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame ->coreFrame())4351 if (auto* frame = WebProcess::singleton().webFrame(frameID); frame && frame->coreFrame()) 4352 4352 WebCore::sendViolationReportWhenNavigatingAwayFromCOOPResponse(*frame->coreFrame(), coop, disposition, coopURL, nextResponseURL, coopOrigin.securityOrigin(), nextResponseOrigin.securityOrigin(), isCOOPResponseNavigationSource, userAgent); 4353 4353 }
Note:
See TracChangeset
for help on using the changeset viewer.