| Index: Source/core/platform/graphics/chromium/Canvas2DLayerBridge.h | 
| diff --git a/Source/core/platform/graphics/chromium/Canvas2DLayerBridge.h b/Source/core/platform/graphics/chromium/Canvas2DLayerBridge.h | 
| index 12f87fa0f0dd9af0e2c5a6eb8c314d46ec4bd97f..658a739e82102e7cef3baa1e35d7e4bf8b5ca048 100644 | 
| --- a/Source/core/platform/graphics/chromium/Canvas2DLayerBridge.h | 
| +++ b/Source/core/platform/graphics/chromium/Canvas2DLayerBridge.h | 
| @@ -43,7 +43,7 @@ class WebGraphicsContext3D; | 
|  | 
| namespace WebCore { | 
|  | 
| -class Canvas2DLayerBridge : public WebKit::WebExternalTextureLayerClient, public SkDeferredCanvas::NotificationClient, public DoublyLinkedListNode<Canvas2DLayerBridge> { | 
| +class Canvas2DLayerBridge : public WebKit::WebExternalTextureLayerClient, public SkDeferredCanvas::NotificationClient, public DoublyLinkedListNode<Canvas2DLayerBridge>, public RefCounted<Canvas2DLayerBridge> { | 
| WTF_MAKE_NONCOPYABLE(Canvas2DLayerBridge); | 
| public: | 
| enum OpacityMode { | 
| @@ -51,7 +51,7 @@ public: | 
| NonOpaque | 
| }; | 
|  | 
| -    static PassOwnPtr<Canvas2DLayerBridge> create(PassRefPtr<GraphicsContext3D>, const IntSize&, OpacityMode); | 
| +    static PassRefPtr<Canvas2DLayerBridge> create(PassRefPtr<GraphicsContext3D>, const IntSize&, OpacityMode); | 
|  | 
| virtual ~Canvas2DLayerBridge(); | 
|  | 
| @@ -81,9 +81,13 @@ public: | 
|  | 
| bool isValid(); | 
|  | 
| +    // Non-virtual overload of RefCounted::deref. RefPtr calls this one. | 
| +    void deref(); | 
| + | 
| protected: | 
| Canvas2DLayerBridge(PassRefPtr<GraphicsContext3D>, SkDeferredCanvas*, OpacityMode); | 
| void setRateLimitingEnabled(bool); | 
| +    bool isDead(); | 
|  | 
| SkDeferredCanvas* m_canvas; | 
| OwnPtr<WebKit::WebExternalTextureLayer> m_layer; | 
| @@ -92,6 +96,8 @@ protected: | 
| bool m_didRecordDrawCommand; | 
| bool m_surfaceIsValid; | 
| int m_framesPending; | 
| +    int m_liveMailboxCount; | 
| +    bool m_destructionInProgress; | 
| bool m_rateLimitingEnabled; | 
|  | 
| friend class WTF::DoublyLinkedListNode<Canvas2DLayerBridge>; | 
| @@ -108,6 +114,7 @@ protected: | 
| WebKit::WebExternalTextureMailbox m_mailbox; | 
| SkAutoTUnref<SkImage> m_image; | 
| MailboxStatus m_status; | 
| +        RefPtr<Canvas2DLayerBridge> m_parentLayerBridge; | 
|  | 
| MailboxInfo(const MailboxInfo&); | 
| MailboxInfo() {} | 
|  |