Chromium Code Reviews| Index: Source/modules/accessibility/AXNodeObject.cpp |
| diff --git a/Source/modules/accessibility/AXNodeObject.cpp b/Source/modules/accessibility/AXNodeObject.cpp |
| index 6953683de40d3d1f5a49d81e539a50450bf0f62f..38046914ed0e6331a746563ec9dd8edeb5ca1dae 100644 |
| --- a/Source/modules/accessibility/AXNodeObject.cpp |
| +++ b/Source/modules/accessibility/AXNodeObject.cpp |
| @@ -70,9 +70,9 @@ AXNodeObject::AXNodeObject(Node* node, AXObjectCacheImpl& axObjectCache) |
| { |
| } |
| -PassRefPtr<AXNodeObject> AXNodeObject::create(Node* node, AXObjectCacheImpl& axObjectCache) |
| +PassRefPtrWillBeRawPtr<AXNodeObject> AXNodeObject::create(Node* node, AXObjectCacheImpl& axObjectCache) |
| { |
| - return adoptRef(new AXNodeObject(node, axObjectCache)); |
| + return adoptRefWillBeNoop(new AXNodeObject(node, axObjectCache)); |
| } |
| AXNodeObject::~AXNodeObject() |
| @@ -757,7 +757,7 @@ void AXNodeObject::detach() |
| { |
| clearChildren(); |
| AXObject::detach(); |
|
haraken
2015/06/24 13:27:20
detach() should be first.
Maybe you can fix this
keishi
2015/06/24 15:05:26
Removed clearChildren because AXObject::detach doe
|
| - m_node = 0; |
| + m_node = nullptr; |
| } |
| bool AXNodeObject::isAnchor() const |
| @@ -1777,7 +1777,7 @@ String AXNodeObject::computedName() const |
| // New AX name calculation. |
| // |
| -String AXNodeObject::textAlternative(bool recursive, bool inAriaLabelledByTraversal, HashSet<AXObject*>& visited, AXNameFrom* nameFrom, Vector<AXObject*>* nameObjects) |
| +String AXNodeObject::textAlternative(bool recursive, bool inAriaLabelledByTraversal, WillBeHeapHashSet<RawPtrWillBeMember<AXObject>>& visited, AXNameFrom* nameFrom, WillBeHeapVector<RawPtrWillBeMember<AXObject>>* nameObjects) |
| { |
| bool alreadyVisited = visited.contains(this); |
| visited.add(this); |
| @@ -1800,7 +1800,7 @@ String AXNodeObject::textAlternative(bool recursive, bool inAriaLabelledByTraver |
| ariaLabeledByElements(elements); |
| StringBuilder accumulatedText; |
| for (const auto& element : elements) { |
| - RefPtr<AXObject> axElement = axObjectCache().getOrCreate(element); |
| + RefPtrWillBeRawPtr<AXObject> axElement = axObjectCache().getOrCreate(element); |
| if (axElement) { |
| if (nameObjects) |
| nameObjects->append(axElement.get()); |
| @@ -2356,10 +2356,16 @@ void AXNodeObject::ariaLabeledByText(WillBeHeapVector<OwnPtrWillBeMember<Accessi |
| ariaLabeledByElements(elements); |
| for (const auto& element : elements) { |
| - RefPtr<AXObject> axElement = axObjectCache().getOrCreate(element); |
| + RefPtrWillBeRawPtr<AXObject> axElement = axObjectCache().getOrCreate(element); |
| textOrder.append(AccessibilityText::create(ariaLabeledBy, AlternativeText, axElement)); |
| } |
| } |
| } |
| +DEFINE_TRACE(AXNodeObject) |
| +{ |
| + visitor->trace(m_node); |
| + AXObject::trace(visitor); |
| +} |
| + |
| } // namespace blink |