[webkit-changes] [WebKit/WebKit] 61fada: Avoid unnecessary tree traversals in Page::setMemo...
Chris Dumez
noreply at github.com
Fri Mar 17 10:22:01 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 61fadadf20f5f65495e6cd2d060c782ee87576e5
https://github.com/WebKit/WebKit/commit/61fadadf20f5f65495e6cd2d060c782ee87576e5
Author: Chris Dumez <cdumez at apple.com>
Date: 2023-03-17 (Fri, 17 Mar 2023)
Changed paths:
M Source/WebCore/loader/FrameLoader.cpp
M Source/WebCore/page/Page.cpp
M Source/WebCore/page/Page.h
Log Message:
-----------
Avoid unnecessary tree traversals in Page::setMemoryCacheClientCallsEnabled()
https://bugs.webkit.org/show_bug.cgi?id=254058
Reviewed by Darin Adler.
Avoid unnecessary tree traversals in Page::setMemoryCacheClientCallsEnabled().
There are often no loads to notify the frames about and we end up traversing
the whole frame tree unnecessarily. To avoid this, I am introducing a new
hasPendingMemoryCacheLoadNotifications flag on the page that gets set whenever
we queue a notification for one of the frames. We nos only traverse the frame
tree when this flag is set.
* Source/WebCore/loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadedResourceFromMemoryCache):
* Source/WebCore/page/Page.cpp:
(WebCore::Page::setMemoryCacheClientCallsEnabled):
* Source/WebCore/page/Page.h:
(WebCore::Page::setHasPendingMemoryCacheLoadNotifications):
Canonical link: https://commits.webkit.org/261797@main
More information about the webkit-changes
mailing list