Oilpan: move ClientRect and its list to the oilpan heap.
[email protected],[email protected],[email protected]
BUG=340522
Review URL: https://codereview.chromium.org/225843002
git-svn-id: svn://svn.chromium.org/blink/trunk@170951 bbb929c8-8fbe-4397-9dbb-9b2b20218538
diff --git a/third_party/WebKit/Source/core/dom/ClientRect.h b/third_party/WebKit/Source/core/dom/ClientRect.h
index 3ef3b24..2fdaeab 100644
--- a/third_party/WebKit/Source/core/dom/ClientRect.h
+++ b/third_party/WebKit/Source/core/dom/ClientRect.h
@@ -29,33 +29,45 @@
#include "bindings/v8/ScriptWrappable.h"
#include "platform/geometry/FloatRect.h"
+#include "platform/heap/Handle.h"
#include "wtf/PassRefPtr.h"
#include "wtf/RefCounted.h"
namespace WebCore {
- class IntRect;
+class IntRect;
- class ClientRect : public ScriptWrappable, public RefCounted<ClientRect> {
- public:
- static PassRefPtr<ClientRect> create() { return adoptRef(new ClientRect); }
- static PassRefPtr<ClientRect> create(const IntRect& rect) { return adoptRef(new ClientRect(rect)); }
- static PassRefPtr<ClientRect> create(const FloatRect& rect) { return adoptRef(new ClientRect(rect)); }
+class ClientRect FINAL : public RefCountedWillBeGarbageCollectedFinalized<ClientRect>, public ScriptWrappable {
+public:
+ static PassRefPtrWillBeRawPtr<ClientRect> create()
+ {
+ return adoptRefWillBeNoop(new ClientRect);
+ }
+ static PassRefPtrWillBeRawPtr<ClientRect> create(const IntRect& rect)
+ {
+ return adoptRefWillBeNoop(new ClientRect(rect));
+ }
+ static PassRefPtrWillBeRawPtr<ClientRect> create(const FloatRect& rect)
+ {
+ return adoptRefWillBeNoop(new ClientRect(rect));
+ }
- float top() const { return m_rect.y(); }
- float right() const { return m_rect.maxX(); }
- float bottom() const { return m_rect.maxY(); }
- float left() const { return m_rect.x(); }
- float width() const { return m_rect.width(); }
- float height() const { return m_rect.height(); }
+ float top() const { return m_rect.y(); }
+ float right() const { return m_rect.maxX(); }
+ float bottom() const { return m_rect.maxY(); }
+ float left() const { return m_rect.x(); }
+ float width() const { return m_rect.width(); }
+ float height() const { return m_rect.height(); }
- private:
- ClientRect();
- explicit ClientRect(const IntRect&);
- explicit ClientRect(const FloatRect&);
+ void trace(Visitor*) { }
- FloatRect m_rect;
- };
+private:
+ ClientRect();
+ explicit ClientRect(const IntRect&);
+ explicit ClientRect(const FloatRect&);
+
+ FloatRect m_rect;
+};
} // namespace WebCore
diff --git a/third_party/WebKit/Source/core/dom/ClientRect.idl b/third_party/WebKit/Source/core/dom/ClientRect.idl
index ffdcfdd..4fae5d7 100644
--- a/third_party/WebKit/Source/core/dom/ClientRect.idl
+++ b/third_party/WebKit/Source/core/dom/ClientRect.idl
@@ -25,6 +25,7 @@
*/
[
+ WillBeGarbageCollected,
] interface ClientRect {
readonly attribute float top;
readonly attribute float right;
diff --git a/third_party/WebKit/Source/core/dom/ClientRectList.cpp b/third_party/WebKit/Source/core/dom/ClientRectList.cpp
index c7d054c..7828882 100644
--- a/third_party/WebKit/Source/core/dom/ClientRectList.cpp
+++ b/third_party/WebKit/Source/core/dom/ClientRectList.cpp
@@ -64,4 +64,9 @@
return m_list[index].get();
}
+void ClientRectList::trace(Visitor* visitor)
+{
+ visitor->trace(m_list);
+}
+
} // namespace WebCore
diff --git a/third_party/WebKit/Source/core/dom/ClientRectList.h b/third_party/WebKit/Source/core/dom/ClientRectList.h
index 0639714..789ca22 100644
--- a/third_party/WebKit/Source/core/dom/ClientRectList.h
+++ b/third_party/WebKit/Source/core/dom/ClientRectList.h
@@ -29,6 +29,7 @@
#include "bindings/v8/ScriptWrappable.h"
#include "platform/geometry/FloatQuad.h"
+#include "platform/heap/Handle.h"
#include "wtf/PassRefPtr.h"
#include "wtf/RefCounted.h"
#include "wtf/Vector.h"
@@ -37,20 +38,28 @@
class ClientRect;
-class ClientRectList : public RefCounted<ClientRectList>, public ScriptWrappable {
+class ClientRectList FINAL : public RefCountedWillBeGarbageCollectedFinalized<ClientRectList>, public ScriptWrappable {
public:
- static PassRefPtr<ClientRectList> create() { return adoptRef(new ClientRectList); }
- static PassRefPtr<ClientRectList> create(const Vector<FloatQuad>& quads) { return adoptRef(new ClientRectList(quads)); }
+ static PassRefPtrWillBeRawPtr<ClientRectList> create()
+ {
+ return adoptRefWillBeNoop(new ClientRectList);
+ }
+ static PassRefPtrWillBeRawPtr<ClientRectList> create(const Vector<FloatQuad>& quads)
+ {
+ return adoptRefWillBeNoop(new ClientRectList(quads));
+ }
~ClientRectList();
unsigned length() const;
ClientRect* item(unsigned index);
+ void trace(Visitor*);
+
private:
ClientRectList();
explicit ClientRectList(const Vector<FloatQuad>&);
- Vector<RefPtr<ClientRect> > m_list;
+ WillBeHeapVector<RefPtrWillBeMember<ClientRect> > m_list;
};
} // namespace WebCore
diff --git a/third_party/WebKit/Source/core/dom/ClientRectList.idl b/third_party/WebKit/Source/core/dom/ClientRectList.idl
index 7f6b198..bf14542 100644
--- a/third_party/WebKit/Source/core/dom/ClientRectList.idl
+++ b/third_party/WebKit/Source/core/dom/ClientRectList.idl
@@ -25,6 +25,7 @@
*/
[
+ WillBeGarbageCollected,
] interface ClientRectList {
readonly attribute unsigned long length;
getter ClientRect item(unsigned long index);
diff --git a/third_party/WebKit/Source/core/dom/Element.cpp b/third_party/WebKit/Source/core/dom/Element.cpp
index cf9582d..1f8f9f3b 100644
--- a/third_party/WebKit/Source/core/dom/Element.cpp
+++ b/third_party/WebKit/Source/core/dom/Element.cpp
@@ -833,7 +833,7 @@
return result;
}
-PassRefPtr<ClientRectList> Element::getClientRects()
+PassRefPtrWillBeRawPtr<ClientRectList> Element::getClientRects()
{
document().updateLayoutIgnorePendingStylesheets();
@@ -850,7 +850,7 @@
return ClientRectList::create(quads);
}
-PassRefPtr<ClientRect> Element::getBoundingClientRect()
+PassRefPtrWillBeRawPtr<ClientRect> Element::getBoundingClientRect()
{
document().updateLayoutIgnorePendingStylesheets();
diff --git a/third_party/WebKit/Source/core/dom/Element.h b/third_party/WebKit/Source/core/dom/Element.h
index f298a23..bca03ff4 100644
--- a/third_party/WebKit/Source/core/dom/Element.h
+++ b/third_party/WebKit/Source/core/dom/Element.h
@@ -34,6 +34,7 @@
#include "core/dom/SpaceSplitString.h"
#include "core/html/CollectionType.h"
#include "core/page/FocusType.h"
+#include "platform/heap/Handle.h"
#include "platform/scroll/ScrollTypes.h"
namespace WebCore {
@@ -206,8 +207,8 @@
IntRect boundsInRootViewSpace();
- PassRefPtr<ClientRectList> getClientRects();
- PassRefPtr<ClientRect> getBoundingClientRect();
+ PassRefPtrWillBeRawPtr<ClientRectList> getClientRects();
+ PassRefPtrWillBeRawPtr<ClientRect> getBoundingClientRect();
// Returns the absolute bounding box translated into screen coordinates:
IntRect screenRect() const;
diff --git a/third_party/WebKit/Source/core/dom/Range.cpp b/third_party/WebKit/Source/core/dom/Range.cpp
index 7c479cb3..9bc6844 100644
--- a/third_party/WebKit/Source/core/dom/Range.cpp
+++ b/third_party/WebKit/Source/core/dom/Range.cpp
@@ -1808,7 +1808,7 @@
setEnd(end.deepEquivalent().containerNode(), end.deepEquivalent().computeOffsetInContainerNode(), exceptionState);
}
-PassRefPtr<ClientRectList> Range::getClientRects() const
+PassRefPtrWillBeRawPtr<ClientRectList> Range::getClientRects() const
{
if (!m_start.container())
return ClientRectList::create();
@@ -1821,7 +1821,7 @@
return ClientRectList::create(quads);
}
-PassRefPtr<ClientRect> Range::getBoundingClientRect() const
+PassRefPtrWillBeRawPtr<ClientRect> Range::getBoundingClientRect() const
{
return ClientRect::create(boundingRect());
}
diff --git a/third_party/WebKit/Source/core/dom/Range.h b/third_party/WebKit/Source/core/dom/Range.h
index edbaf83..1a6c917 100644
--- a/third_party/WebKit/Source/core/dom/Range.h
+++ b/third_party/WebKit/Source/core/dom/Range.h
@@ -143,8 +143,8 @@
// for details.
void expand(const String&, ExceptionState&);
- PassRefPtr<ClientRectList> getClientRects() const;
- PassRefPtr<ClientRect> getBoundingClientRect() const;
+ PassRefPtrWillBeRawPtr<ClientRectList> getClientRects() const;
+ PassRefPtrWillBeRawPtr<ClientRect> getBoundingClientRect() const;
#ifndef NDEBUG
void formatForDebugger(char* buffer, unsigned length) const;
diff --git a/third_party/WebKit/Source/core/page/Page.cpp b/third_party/WebKit/Source/core/page/Page.cpp
index 2e5e796b..60526ae 100644
--- a/third_party/WebKit/Source/core/page/Page.cpp
+++ b/third_party/WebKit/Source/core/page/Page.cpp
@@ -198,7 +198,7 @@
return String();
}
-PassRefPtr<ClientRectList> Page::nonFastScrollableRects(const LocalFrame* frame)
+PassRefPtrWillBeRawPtr<ClientRectList> Page::nonFastScrollableRects(const LocalFrame* frame)
{
if (Document* document = m_mainFrame->document())
document->updateLayout();
diff --git a/third_party/WebKit/Source/core/page/Page.h b/third_party/WebKit/Source/core/page/Page.h
index 7248f89..e4cb17a 100644
--- a/third_party/WebKit/Source/core/page/Page.h
+++ b/third_party/WebKit/Source/core/page/Page.h
@@ -157,7 +157,7 @@
ScrollingCoordinator* scrollingCoordinator();
String mainThreadScrollingReasonsAsText();
- PassRefPtr<ClientRectList> nonFastScrollableRects(const LocalFrame*);
+ PassRefPtrWillBeRawPtr<ClientRectList> nonFastScrollableRects(const LocalFrame*);
Settings& settings() const { return *m_settings; }
BackForwardClient& backForward() const { return *m_backForwardClient; }
diff --git a/third_party/WebKit/Source/core/testing/Internals.cpp b/third_party/WebKit/Source/core/testing/Internals.cpp
index d4c3cec..3f88666 100644
--- a/third_party/WebKit/Source/core/testing/Internals.cpp
+++ b/third_party/WebKit/Source/core/testing/Internals.cpp
@@ -765,7 +765,7 @@
return s_pagePopupDriver ? s_pagePopupDriver->pagePopupController() : 0;
}
-PassRefPtr<ClientRect> Internals::unscaledViewportRect(ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRect> Internals::unscaledViewportRect(ExceptionState& exceptionState)
{
Document* document = contextDocument();
if (!document || !document->view()) {
@@ -776,7 +776,7 @@
return ClientRect::create(document->view()->visibleContentRect());
}
-PassRefPtr<ClientRect> Internals::absoluteCaretBounds(ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRect> Internals::absoluteCaretBounds(ExceptionState& exceptionState)
{
Document* document = contextDocument();
if (!document || !document->frame()) {
@@ -787,7 +787,7 @@
return ClientRect::create(document->frame()->selection().absoluteCaretBounds());
}
-PassRefPtr<ClientRect> Internals::boundingBox(Element* element, ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRect> Internals::boundingBox(Element* element, ExceptionState& exceptionState)
{
if (!element) {
exceptionState.throwDOMException(InvalidAccessError, ExceptionMessages::argumentNullOrIncorrectType(1, "Element"));
@@ -801,7 +801,7 @@
return ClientRect::create(renderer->absoluteBoundingBoxRectIgnoringTransforms());
}
-PassRefPtr<ClientRectList> Internals::inspectorHighlightRects(Document* document, ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRectList> Internals::inspectorHighlightRects(Document* document, ExceptionState& exceptionState)
{
if (!document || !document->page()) {
exceptionState.throwDOMException(InvalidAccessError, document ? "The document's Page cannot be retrieved." : "No context document can be obtained.");
@@ -1207,7 +1207,7 @@
return targetNode;
}
-PassRefPtr<ClientRect> Internals::bestZoomableAreaForTouchPoint(long x, long y, long width, long height, Document* document, ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRect> Internals::bestZoomableAreaForTouchPoint(long x, long y, long width, long height, Document* document, ExceptionState& exceptionState)
{
if (!document || !document->frame()) {
exceptionState.throwDOMException(InvalidAccessError, document ? "The document's frame cannot be retrieved." : "The document provided is invalid.");
@@ -1863,7 +1863,7 @@
return document->frame()->trackedRepaintRectsAsText();
}
-PassRefPtr<ClientRectList> Internals::repaintRects(Element* element, ExceptionState& exceptionState) const
+PassRefPtrWillBeRawPtr<ClientRectList> Internals::repaintRects(Element* element, ExceptionState& exceptionState) const
{
if (!element) {
exceptionState.throwDOMException(InvalidAccessError, ExceptionMessages::argumentNullOrIncorrectType(1, "Element"));
@@ -1910,7 +1910,7 @@
return page->mainThreadScrollingReasonsAsText();
}
-PassRefPtr<ClientRectList> Internals::nonFastScrollableRects(Document* document, ExceptionState& exceptionState) const
+PassRefPtrWillBeRawPtr<ClientRectList> Internals::nonFastScrollableRects(Document* document, ExceptionState& exceptionState) const
{
if (!document || !document->frame()) {
exceptionState.throwDOMException(InvalidAccessError, document ? "The document's frame cannot be retrieved." : "The document provided is invalid.");
@@ -2134,17 +2134,17 @@
document->updateLayoutIgnorePendingStylesheets(Document::RunPostLayoutTasksSynchronously);
}
-PassRefPtr<ClientRectList> Internals::draggableRegions(Document* document, ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRectList> Internals::draggableRegions(Document* document, ExceptionState& exceptionState)
{
return annotatedRegions(document, true, exceptionState);
}
-PassRefPtr<ClientRectList> Internals::nonDraggableRegions(Document* document, ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRectList> Internals::nonDraggableRegions(Document* document, ExceptionState& exceptionState)
{
return annotatedRegions(document, false, exceptionState);
}
-PassRefPtr<ClientRectList> Internals::annotatedRegions(Document* document, bool draggable, ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRectList> Internals::annotatedRegions(Document* document, bool draggable, ExceptionState& exceptionState)
{
if (!document || !document->view()) {
exceptionState.throwDOMException(InvalidAccessError, document ? "The document's view cannot be retrieved." : "The document provided is invalid.");
@@ -2267,7 +2267,7 @@
frame()->loader().reload(endToEnd ? EndToEndReload : NormalReload);
}
-PassRefPtr<ClientRect> Internals::selectionBounds(ExceptionState& exceptionState)
+PassRefPtrWillBeRawPtr<ClientRect> Internals::selectionBounds(ExceptionState& exceptionState)
{
Document* document = contextDocument();
if (!document || !document->frame()) {
diff --git a/third_party/WebKit/Source/core/testing/Internals.h b/third_party/WebKit/Source/core/testing/Internals.h
index f29a76e..5cf148d 100644
--- a/third_party/WebKit/Source/core/testing/Internals.h
+++ b/third_party/WebKit/Source/core/testing/Internals.h
@@ -139,13 +139,13 @@
void setEnableMockPagePopup(bool, ExceptionState&);
PassRefPtrWillBeRawPtr<PagePopupController> pagePopupController();
- PassRefPtr<ClientRect> unscaledViewportRect(ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRect> unscaledViewportRect(ExceptionState&);
- PassRefPtr<ClientRect> absoluteCaretBounds(ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRect> absoluteCaretBounds(ExceptionState&);
- PassRefPtr<ClientRect> boundingBox(Element*, ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRect> boundingBox(Element*, ExceptionState&);
- PassRefPtr<ClientRectList> inspectorHighlightRects(Document*, ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRectList> inspectorHighlightRects(Document*, ExceptionState&);
unsigned markerCountForNode(Node*, const String&, ExceptionState&);
unsigned activeMarkerCountForNode(Node*, ExceptionState&);
@@ -175,7 +175,7 @@
Node* touchNodeAdjustedToBestClickableNode(long x, long y, long width, long height, Document*, ExceptionState&);
PassRefPtrWillBeRawPtr<DOMPoint> touchPositionAdjustedToBestContextMenuNode(long x, long y, long width, long height, Document*, ExceptionState&);
Node* touchNodeAdjustedToBestContextMenuNode(long x, long y, long width, long height, Document*, ExceptionState&);
- PassRefPtr<ClientRect> bestZoomableAreaForTouchPoint(long x, long y, long width, long height, Document*, ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRect> bestZoomableAreaForTouchPoint(long x, long y, long width, long height, Document*, ExceptionState&);
int lastSpellCheckRequestSequence(Document*, ExceptionState&);
int lastSpellCheckProcessedSequence(Document*, ExceptionState&);
@@ -230,11 +230,11 @@
void setNeedsCompositedScrolling(Element*, unsigned value, ExceptionState&);
String repaintRectsAsText(Document*, ExceptionState&) const;
- PassRefPtr<ClientRectList> repaintRects(Element*, ExceptionState&) const;
+ PassRefPtrWillBeRawPtr<ClientRectList> repaintRects(Element*, ExceptionState&) const;
String scrollingStateTreeAsText(Document*, ExceptionState&) const;
String mainThreadScrollingReasons(Document*, ExceptionState&) const;
- PassRefPtr<ClientRectList> nonFastScrollableRects(Document*, ExceptionState&) const;
+ PassRefPtrWillBeRawPtr<ClientRectList> nonFastScrollableRects(Document*, ExceptionState&) const;
void garbageCollectDocumentResources(Document*, ExceptionState&) const;
void evictAllResources() const;
@@ -284,8 +284,8 @@
void updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks(ExceptionState&);
void updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks(Node*, ExceptionState&);
- PassRefPtr<ClientRectList> draggableRegions(Document*, ExceptionState&);
- PassRefPtr<ClientRectList> nonDraggableRegions(Document*, ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRectList> draggableRegions(Document*, ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRectList> nonDraggableRegions(Document*, ExceptionState&);
PassRefPtr<ArrayBuffer> serializeObject(PassRefPtr<SerializedScriptValue>) const;
PassRefPtr<SerializedScriptValue> deserializeBuffer(PassRefPtr<ArrayBuffer>) const;
@@ -300,7 +300,7 @@
bool isSelectPopupVisible(Node*);
- PassRefPtr<ClientRect> selectionBounds(ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRect> selectionBounds(ExceptionState&);
String baseURL(Document*, ExceptionState&);
bool loseSharedGraphicsContext3D();
@@ -330,7 +330,7 @@
Document* contextDocument() const;
LocalFrame* frame() const;
Vector<String> iconURLs(Document*, int iconTypesMask) const;
- PassRefPtr<ClientRectList> annotatedRegions(Document*, bool draggable, ExceptionState&);
+ PassRefPtrWillBeRawPtr<ClientRectList> annotatedRegions(Document*, bool draggable, ExceptionState&);
DocumentMarker* markerAt(Node*, const String& markerType, unsigned index, ExceptionState&);
RefPtrWillBeMember<DOMWindow> m_frontendWindow;
diff --git a/third_party/WebKit/Source/core/testing/LayerRect.h b/third_party/WebKit/Source/core/testing/LayerRect.h
index 559dfd90..2b45f52 100644
--- a/third_party/WebKit/Source/core/testing/LayerRect.h
+++ b/third_party/WebKit/Source/core/testing/LayerRect.h
@@ -43,9 +43,9 @@
class Node;
-class LayerRect : public RefCountedWillBeGarbageCollectedFinalized<LayerRect> {
+class LayerRect FINAL : public RefCountedWillBeGarbageCollectedFinalized<LayerRect> {
public:
- static PassRefPtrWillBeRawPtr<LayerRect> create(PassRefPtr<Node> node, const String& layerType, PassRefPtr<ClientRect> rect)
+ static PassRefPtrWillBeRawPtr<LayerRect> create(PassRefPtr<Node> node, const String& layerType, PassRefPtrWillBeRawPtr<ClientRect> rect)
{
return adoptRefWillBeNoop(new LayerRect(node, layerType, rect));
}
@@ -54,10 +54,13 @@
String layerType() const { return m_layerType; }
ClientRect* layerRelativeRect() const { return m_rect.get(); }
- void trace(Visitor*) { }
+ void trace(Visitor* visitor)
+ {
+ visitor->trace(m_rect);
+ }
private:
- LayerRect(PassRefPtr<Node> node, const String& layerName, PassRefPtr<ClientRect> rect)
+ LayerRect(PassRefPtr<Node> node, const String& layerName, PassRefPtrWillBeRawPtr<ClientRect> rect)
: m_layerRootNode(node)
, m_layerType(layerName)
, m_rect(rect)
@@ -66,7 +69,7 @@
RefPtr<Node> m_layerRootNode;
String m_layerType;
- RefPtr<ClientRect> m_rect;
+ RefPtrWillBeMember<ClientRect> m_rect;
};
} // namespace WebCore
diff --git a/third_party/WebKit/Source/core/testing/LayerRectList.cpp b/third_party/WebKit/Source/core/testing/LayerRectList.cpp
index 9cb79c1..b23cfd6f 100644
--- a/third_party/WebKit/Source/core/testing/LayerRectList.cpp
+++ b/third_party/WebKit/Source/core/testing/LayerRectList.cpp
@@ -56,7 +56,7 @@
return m_list[index].get();
}
-void LayerRectList::append(PassRefPtr<Node> layerRootNode, const String& layerType, PassRefPtr<ClientRect> layerRelativeRect)
+void LayerRectList::append(PassRefPtr<Node> layerRootNode, const String& layerType, PassRefPtrWillBeRawPtr<ClientRect> layerRelativeRect)
{
m_list.append(LayerRect::create(layerRootNode, layerType, layerRelativeRect));
}
diff --git a/third_party/WebKit/Source/core/testing/LayerRectList.h b/third_party/WebKit/Source/core/testing/LayerRectList.h
index f87c5de..668363e 100644
--- a/third_party/WebKit/Source/core/testing/LayerRectList.h
+++ b/third_party/WebKit/Source/core/testing/LayerRectList.h
@@ -44,7 +44,7 @@
class LayerRect;
class Node;
-class LayerRectList : public RefCountedWillBeGarbageCollected<LayerRectList> {
+class LayerRectList FINAL : public RefCountedWillBeGarbageCollected<LayerRectList> {
DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(LayerRectList);
public:
static PassRefPtrWillBeRawPtr<LayerRectList> create()
@@ -54,7 +54,7 @@
unsigned length() const;
LayerRect* item(unsigned index);
- void append(PassRefPtr<Node> layerRootNode, const String& layerName, PassRefPtr<ClientRect> layerRelativeRect);
+ void append(PassRefPtr<Node> layerRootNode, const String& layerName, PassRefPtrWillBeRawPtr<ClientRect> layerRelativeRect);
void trace(Visitor*);
diff --git a/third_party/WebKit/Source/web/tests/TouchActionTest.cpp b/third_party/WebKit/Source/web/tests/TouchActionTest.cpp
index 9e0e093e..edde74b2 100644
--- a/third_party/WebKit/Source/web/tests/TouchActionTest.cpp
+++ b/third_party/WebKit/Source/web/tests/TouchActionTest.cpp
@@ -206,9 +206,9 @@
// Note that we don't want the bounding box because our tests sometimes have elements with
// multiple border boxes with other elements in between. Use the first border box (which
// we can easily visualize in a browser for debugging).
- RefPtr<WebCore::ClientRectList> rects = element->getClientRects();
+ RefPtrWillBeRawPtr<WebCore::ClientRectList> rects = element->getClientRects();
ASSERT_GE(rects->length(), 0u) << failureContext;
- RefPtr<WebCore::ClientRect> r = rects->item(0);
+ RefPtrWillBeRawPtr<WebCore::ClientRect> r = rects->item(0);
WebCore::FloatRect clientFloatRect = WebCore::FloatRect(r->left(), r->top(), r->width(), r->height());
WebCore::IntRect clientRect = enclosedIntRect(clientFloatRect);
for (int locIdx = 0; locIdx < 3; locIdx++) {