Bug 66995

Summary: [chromium] Eradicate unneded RefPtr usage in compositor
Product: WebKit Reporter: Nat Duca <nduca>
Component: WebCore Misc.Assignee: Nobody <webkit-unassigned>
Status: RESOLVED WONTFIX    
Severity: Normal CC: enne, jamesr, nduca, schenney
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 67440, 68121, 68135    
Bug Blocks:    

Description Nat Duca 2011-08-25 16:17:48 PDT
CCLayerTreeHost does not need to be refcounted.
Nor does LayerRendererChromium.

CCLayerImpl, I don't know?

RenderSurfaces? Not if we go to a RenderPass abstraction and let the LayerRenderer manage the RenderPass list. Might be less fragile, anyway.
Comment 1 James Robinson 2011-09-02 18:11:47 PDT
I'm going to take a crack at CCLayerTreeHost/LayerRendererChromium.
Comment 2 James Robinson 2011-09-14 15:34:02 PDT
https://bugs.webkit.org/show_bug.cgi?id=68121 fixes LayerRendererChromium to not be RefCounted.

CCLayerImpl is a bit tricky since currently the TreeSynchronizer relies on the refcounting.  We can probably do this another way but it's not trivial.

RenderSurfaceChromium and CCRenderSurface are single ownership (and need a rewrite anyway).

CCLayerTreeHost is definitely possible, we just need to be careful to clear back pointers since the GraphicsLayers and LayerChromiums can very easily outlive the CCLayerTreeHost.  I'll take a crack at this one next.

After that I think we're pretty much done.