[webkit-changes] [WebKit/WebKit] 52cc65: AX: properties using getOrRetrievePropertyValue ar...

Joshua Hoffman noreply at github.com
Thu Sep 28 10:22:47 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 52cc65198e6415eebeb901a8317d897560e59abb
      https://github.com/WebKit/WebKit/commit/52cc65198e6415eebeb901a8317d897560e59abb
  Author: Joshua Hoffman <jhoffman23 at apple.com>
  Date:   2023-09-28 (Thu, 28 Sep 2023)

  Changed paths:
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp

  Log Message:
  -----------
  AX: properties using getOrRetrievePropertyValue are not stored in sparse property map when empty
https://bugs.webkit.org/show_bug.cgi?id=262195
rdar://problem/116126895

Reviewed by Tyler Wilcock.

In https://bugs.webkit.org/show_bug.cgi?id=261968 (AX: AXIsolatedObject::m_propertyMap is not
sparse), all attributes that have a value that is the default for its type are not stored in the
property map. However, for properties that hit the main thread in getOrRetrievePropertyValue,
this change means that we will not cache empty values, and could access the main thread more
frequently as a result of a missing cache entry.

This patch resolves this by always caching the value for properties retrieved in that method,
regardless of their value.

* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeProperties):
(WebCore::AXIsolatedObject::getOrRetrievePropertyValue):

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




More information about the webkit-changes mailing list