Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: f011ab9a032634fb8820735ab22bef1c893da181
https://github.com/WebKit/WebKit/commit/f011ab9a032634fb8820735ab22bef1c893da181
Author: Matthew Finkel <[email protected]>
Date: 2023-06-16 (Fri, 16 Jun 2023)
Changed paths:
M Source/WebCore/html/CanvasBase.cpp
M Source/WebCore/html/CanvasBase.h
M Source/WebCore/html/CustomPaintCanvas.cpp
M Source/WebCore/html/HTMLCanvasElement.cpp
M Source/WebCore/html/OffscreenCanvas.cpp
Log Message:
-----------
Cache NoiseInjectionHashSalt in CanvasBase
https://bugs.webkit.org/show_bug.cgi?id=258176
rdar://109862698
Reviewed by Wenson Hsieh.
This change avoids calling ScriptExecutionContext::noiseInjectionHashSalt() in
hot code paths. Caching the value is safe because it should never change
between calls, and even if we did, using an old value wouldn't meaningfully
reduce the protection.
This change is covered by existing tests.
* Source/WebCore/html/CanvasBase.cpp:
(WebCore::CanvasBase::CanvasBase):
(WebCore::CanvasBase::~CanvasBase):
(WebCore::CanvasBase::makeRenderingResultsAvailable):
(WebCore::CanvasBase::shouldInjectNoiseBeforeReadback const):
(WebCore::CanvasBase::postProcessPixelBufferResults const):
* Source/WebCore/html/CanvasBase.h:
* Source/WebCore/html/CustomPaintCanvas.cpp:
(WebCore::CustomPaintCanvas::CustomPaintCanvas):
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::HTMLCanvasElement):
* Source/WebCore/html/OffscreenCanvas.cpp:
(WebCore::OffscreenCanvas::OffscreenCanvas):
Canonical link: https://commits.webkit.org/265266@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes