Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
A
angle
  • Project
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Chen Yisong
  • angle
  • Repository

Switch branch/tag
  • angle
  • src
  • libANGLE
  • renderer
  • d3d
  • TextureD3D.cpp
Find file
BlameHistoryPermalink
  • Jiajie Hu's avatar
    Fix corruption when changing the base level of a framebuffer texture attachment · e7d27705
    Jiajie Hu authored Apr 30, 2020
    In the D3D renderer, changing the base level may trigger re-allocation
    of the texture storage, for example if the new base level has a
    different aspect ratio. During the process, image contents in the
    texture storage should be backed up properly. The D3D11 backend does
    this if an image has been associated with the texture storage, but it
    may happen such an association has never been established, and
    corruption will be observed then.
    
    The proposed patch mitigates the problem by introducing a new method
    named findRenderTarget(), with which one can tell if a mip level has
    been used as the render target. This works based on the fact that render
    targets are cached in the texture storage object. Hence all mip levels
    of interest can be found, without relying on the association between
    images and texture storage.
    
    Bug: angleproject:2291
    Change-Id: Ic73af7b603be25c65760928f276bec16df003baf
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2158830
    Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
    Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
    e7d27705
TextureD3D.cpp 159 KB
EditWeb IDE
×

Replace TextureD3D.cpp

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.