• kylechar's avatar
    exo: Handle DidLoseLayerTreeFrameSink() for OOP-D. · 634dc73d
    kylechar authored
    LayerTreeFrameSinkHolder doesn't handle losing LayerTreeFrameSink for
    all situations today. LayerTreeFrameSinkHolder assumes that the only
    time the LayerTreeFrameSink is lost is during destruction which is
    *mostly* true without OOP-D.
    
    With OOP-D the LayerTreeFrameSink holds a message pipe to the GPU
    process, so anytime the GPU process crashes the LayerTreeFrameSink will
    be lost and needs to be recreated.
    
    Have SurfaceTreeHost replace the LayerTreeFrameSinkHolder and
    LayerTreeFrameSink. Also change WindowPortLocal assumption that
    LayerTreeFrameSinks never get recreated for a window.
    
    Bug: 954151
    Change-Id: I30a76d615b187086fcecfaf34c9c36e4d3424d4d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1594478Reviewed-by: default avatarSadrul Chowdhury <sadrul@chromium.org>
    Reviewed-by: default avatarDaniele Castagna <dcastagna@chromium.org>
    Commit-Queue: kylechar <kylechar@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#657249}
    634dc73d
layer_tree_frame_sink_holder.h 3.42 KB