Bug 202702 - AX: Make AXIsolatedTree compile again
Summary: AX: Make AXIsolatedTree compile again
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: chris fleizach
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-10-08 12:55 PDT by chris fleizach
Modified: 2019-10-15 17:27 PDT (History)
12 users (show)

See Also:


Attachments
patch (12.58 KB, patch)
2019-10-09 17:09 PDT, chris fleizach
no flags Details | Formatted Diff | Diff
patch (12.59 KB, patch)
2019-10-09 17:25 PDT, chris fleizach
no flags Details | Formatted Diff | Diff
patch (12.30 KB, patch)
2019-10-09 17:36 PDT, chris fleizach
no flags Details | Formatted Diff | Diff
patch (13.37 KB, patch)
2019-10-10 09:44 PDT, chris fleizach
no flags Details | Formatted Diff | Diff
Re-submitting r251045 with a fix for internal builds. (12.89 KB, patch)
2019-10-15 09:36 PDT, Andres Gonzalez
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description chris fleizach 2019-10-08 12:55:59 PDT
Make AXIsolatedTree work compile again
Comment 1 Radar WebKit Bug Importer 2019-10-08 12:56:11 PDT
<rdar://problem/56084968>
Comment 2 chris fleizach 2019-10-09 17:09:45 PDT
Created attachment 380587 [details]
patch
Comment 3 chris fleizach 2019-10-09 17:11:33 PDT
Comment on attachment 380587 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=380587&action=review

> Source/WebCore/accessibility/isolatedtree/AXIsolatedTreeNode.h:-48
> -class AXIsolatedTreeNode final : public AccessibilityObjectInterface, public ThreadSafeRefCounted<AXIsolatedTreeNode>, public CanMakeWeakPtr<AXIsolatedTreeNode> {

If we use WeakPtr, there are assertions to ensure that when created on the main thread, it can only be accessed on the main thread. In this case we don't want to do that. We want to create these objects on the main thread and access on secondary
Comment 4 chris fleizach 2019-10-09 17:25:43 PDT
Created attachment 380591 [details]
patch
Comment 5 chris fleizach 2019-10-09 17:36:24 PDT
Created attachment 380593 [details]
patch
Comment 6 chris fleizach 2019-10-10 09:44:31 PDT
Created attachment 380654 [details]
patch
Comment 7 chris fleizach 2019-10-10 11:55:00 PDT
Comment on attachment 380654 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=380654&action=review

> Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:-112
> -    RELEASE_ASSERT(!isMainThread() || initialRequest);

the first time we access objects we're still on the main thread, so we can't have this check unless we also have the initialRequest logic which seemed somewhat unnecessary

> Source/WebCore/accessibility/isolatedtree/AXIsolatedTreeNode.h:134
> +    RefPtr<AXIsolatedTree> m_cachedTree;

WeakPtrs require that objects made on main thread are only accessed on main thread, which is pretty much the opposite of what we're trying to do here

> Source/WebKit/Configurations/BaseTarget.xcconfig:36
> +SYSTEM_FRAMEWORK_SEARCH_PATHS = $(inherited) $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/ApplicationServices.framework/Versions/A/Frameworks;

Need this for AccessibilitySPI.h
Comment 8 WebKit Commit Bot 2019-10-12 00:57:15 PDT
Comment on attachment 380654 [details]
patch

Clearing flags on attachment: 380654

Committed r251045: <https://trac.webkit.org/changeset/251045>
Comment 9 WebKit Commit Bot 2019-10-12 00:57:16 PDT
All reviewed patches have been landed.  Closing bug.
Comment 10 Truitt Savell 2019-10-14 09:05:57 PDT
Reverted r251045 for reason:

Broke internal builds

Committed r251074: <https://trac.webkit.org/changeset/251074>
Comment 11 Andres Gonzalez 2019-10-15 09:36:07 PDT
Created attachment 380993 [details]
Re-submitting r251045 with a fix for internal builds.
Comment 12 WebKit Commit Bot 2019-10-15 17:27:29 PDT
Comment on attachment 380993 [details]
Re-submitting r251045 with a fix for internal builds.

Clearing flags on attachment: 380993

Committed r251171: <https://trac.webkit.org/changeset/251171>
Comment 13 WebKit Commit Bot 2019-10-15 17:27:31 PDT
All reviewed patches have been landed.  Closing bug.