Index: cc/surfaces/surface.h |
diff --git a/cc/surfaces/surface.h b/cc/surfaces/surface.h |
index 1dc71b75761d28b2c20fe13cf9f24d4fc6dd0909..3dafbba93b257f71e4c987ec8a39183f07c4add7 100644 |
--- a/cc/surfaces/surface.h |
+++ b/cc/surfaces/surface.h |
@@ -130,6 +130,8 @@ class CC_SURFACES_EXPORT Surface { |
bool destroyed() const { return destroyed_; } |
void set_destroyed(bool destroyed) { destroyed_ = destroyed; } |
+ base::WeakPtr<Surface> AsWeakPtr(); |
+ |
private: |
struct FrameData { |
FrameData(CompositorFrame&& frame, |
@@ -177,6 +179,8 @@ class CC_SURFACES_EXPORT Surface { |
base::flat_set<SurfaceId> blocking_surfaces_; |
+ base::WeakPtrFactory<Surface> weak_factory_; |
+ |
DISALLOW_COPY_AND_ASSIGN(Surface); |
}; |