Index: Source/core/rendering/RenderArena.h |
diff --git a/Source/core/rendering/RenderArena.h b/Source/core/rendering/RenderArena.h |
index 0dd278d98f813d17428a465db479cb97e804079e..255509eda6589f5fcae051a79c92f5709a6721b0 100644 |
--- a/Source/core/rendering/RenderArena.h |
+++ b/Source/core/rendering/RenderArena.h |
@@ -36,17 +36,18 @@ |
#define RenderArena_h |
#include "core/platform/Arena.h" |
-#include <wtf/FastAllocBase.h> |
-#include <wtf/Noncopyable.h> |
+#include "wtf/FastAllocBase.h" |
+#include "wtf/Noncopyable.h" |
+#include "wtf/PassRefPtr.h" |
+#include "wtf/RefCounted.h" |
namespace WebCore { |
static const size_t gMaxRecycledSize = 1024; |
-class RenderArena { |
- WTF_MAKE_NONCOPYABLE(RenderArena); WTF_MAKE_FAST_ALLOCATED; |
+class RenderArena : public RefCounted<RenderArena> { |
public: |
- explicit RenderArena(unsigned arenaSize = 8192); |
+ static PassRefPtr<RenderArena> create() { return adoptRef(new RenderArena); } |
~RenderArena(); |
// Memory management functions |
@@ -57,6 +58,8 @@ public: |
size_t totalRenderArenaAllocatedBytes() const { return m_totalAllocated; } |
private: |
+ RenderArena(unsigned arenaSize = 8192); |
+ |
// Underlying arena pool |
ArenaPool m_pool; |