Changeset 255661 in webkit


Ignore:
Timestamp:
Feb 3, 2020 9:37:30 PM (4 years ago)
Author:
Andres Gonzalez
Message:

[WebAccessibilityObjectWrapper detach] should detach either the wrapped AXObject or the IsolatedObject but not both.
https://bugs.webkit.org/show_bug.cgi?id=207178

Reviewed by Chris Fleizach.

Detach either the AXObject or the IsolatedObject depending on the thread that the method is invoed on.

  • accessibility/mac/WebAccessibilityObjectWrapperBase.mm:

(-[WebAccessibilityObjectWrapperBase detachAXObject]):
(-[WebAccessibilityObjectWrapperBase detachIsolatedObject]):
(-[WebAccessibilityObjectWrapperBase detach]): Detach one or the other depending on the thread.

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r255615 r255661  
     12020-02-03  Andres Gonzalez  <andresg_22@apple.com>
     2
     3        [WebAccessibilityObjectWrapper detach] should detach either the wrapped AXObject or the IsolatedObject but not both.
     4        https://bugs.webkit.org/show_bug.cgi?id=207178
     5
     6        Reviewed by Chris Fleizach.
     7
     8        Detach either the AXObject or the IsolatedObject depending on the thread that the method is invoed on.
     9
     10        * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
     11        (-[WebAccessibilityObjectWrapperBase detachAXObject]):
     12        (-[WebAccessibilityObjectWrapperBase detachIsolatedObject]):
     13        (-[WebAccessibilityObjectWrapperBase detach]): Detach one or the other depending on the thread.
     14
    1152020-02-03  Sihui Liu  <sihui_liu@apple.com>
    216
  • trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm

    r255044 r255661  
    311311#endif
    312312
     313- (void)detachAXObject
     314{
     315    m_axObject = nullptr;
     316}
     317
     318#if ENABLE(ACCESSIBILITY_ISOLATED_TREE)
     319- (void)detachIsolatedObject
     320{
     321    m_isolatedObject = nullptr;
     322}
     323#endif
     324
    313325- (void)detach
    314326{
    315     m_axObject = nullptr;
     327    _identifier = InvalidAXID;
    316328#if ENABLE(ACCESSIBILITY_ISOLATED_TREE)
    317     m_isolatedObject = nullptr;
    318 #endif
    319     _identifier = InvalidAXID;
     329    if (!isMainThread()) {
     330        ASSERT(AXObjectCache::clientSupportsIsolatedTree());
     331        [self detachIsolatedObject];
     332        return;
     333    }
     334#endif
     335    [self detachAXObject];
    320336}
    321337
Note: See TracChangeset for help on using the changeset viewer.