Chromium Code Reviews| Index: Source/core/html/HTMLAllCollection.cpp |
| diff --git a/Source/core/html/HTMLAllCollection.cpp b/Source/core/html/HTMLAllCollection.cpp |
| index e3bba65f05aac24ede580eb6a925af7e79eaf52b..2d589b061f4c3d55a7af6ad7e94d42ac565171d2 100644 |
| --- a/Source/core/html/HTMLAllCollection.cpp |
| +++ b/Source/core/html/HTMLAllCollection.cpp |
| @@ -31,9 +31,9 @@ |
| namespace WebCore { |
| -PassRefPtr<HTMLAllCollection> HTMLAllCollection::create(ContainerNode& node, CollectionType type) |
| +PassRefPtrWillBeRawPtr<HTMLAllCollection> HTMLAllCollection::create(ContainerNode& node, CollectionType type) |
| { |
| - return adoptRef(new HTMLAllCollection(node, type)); |
| + return adoptRefWillBeNoop(new HTMLAllCollection(node, type)); |
| } |
| HTMLAllCollection::HTMLAllCollection(ContainerNode& node, CollectionType type) |
| @@ -51,13 +51,13 @@ Element* HTMLAllCollection::namedItemWithIndex(const AtomicString& name, unsigne |
| updateIdNameCache(); |
| const NamedItemCache& cache = namedItemCache(); |
| - if (Vector<Element*>* elements = cache.getElementsById(name)) { |
| + if (WillBeHeapVector<RawPtrWillBeMember<Element> >* elements = cache.getElementsById(name)) { |
| if (index < elements->size()) |
| return elements->at(index); |
| index -= elements->size(); |
| } |
| - if (Vector<Element*>* elements = cache.getElementsByName(name)) { |
| + if (WillBeHeapVector<RawPtrWillBeMember<Element> >* elements = cache.getElementsByName(name)) { |
| if (index < elements->size()) |
| return elements->at(index); |
| } |
| @@ -65,9 +65,9 @@ Element* HTMLAllCollection::namedItemWithIndex(const AtomicString& name, unsigne |
| return 0; |
| } |
| -void HTMLAllCollection::namedGetter(const AtomicString& name, bool& returnValue0Enabled, RefPtr<NodeList>& returnValue0, bool& returnValue1Enabled, RefPtr<Element>& returnValue1) |
| +void HTMLAllCollection::namedGetter(const AtomicString& name, bool& returnValue0Enabled, RefPtrWillBeRawPtr<NodeList>& returnValue0, bool& returnValue1Enabled, RefPtr<Element>& returnValue1) |
| { |
| - Vector<RefPtr<Element> > namedItems; |
| + WillBeHeapVector<RefPtrWillBeMember<Element> > namedItems; |
| this->namedItems(name, namedItems); |
| if (!namedItems.size()) |
| @@ -75,7 +75,12 @@ void HTMLAllCollection::namedGetter(const AtomicString& name, bool& returnValue0 |
| if (namedItems.size() == 1) { |
| returnValue1Enabled = true; |
| +#if ENABLE(OILPAN) |
| + // FIXME: Oilpan: remove once Element becomes [GarbageCollected]. |
| + returnValue1 = PassRefPtr<Element>(namedItems.at(0).get()); |
|
Mads Ager (chromium)
2014/05/15 10:54:24
Does the following work in both builds?
// FIXME:
sof
2014/05/15 22:15:57
It works to drop down to a bare pointer, the FIXME
|
| +#else |
| returnValue1 = namedItems.at(0); |
| +#endif |
| return; |
| } |