Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
S
swiftshader
  • 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
  • swiftshader
  • Repository

Switch branch/tag
  • swiftshader
  • src
  • Main
  • FrameBufferFactoryOzone.cpp
Find file
BlameHistoryPermalink
  • Maksim Sisov's avatar
    X11 and Ozone: Try to check for display type when creating framebuf · aba65a8e
    Maksim Sisov authored Aug 19, 2020
    We're making a new config in the Chromium project for Linux builds -
    USE_X11 && USE_OZONE. The idea of that is to ease migration
    from non-Ozone/X11 to Ozone. It will be possible to choose between
    Ozone and non-Ozone path on runtime by supplying
    the --enable-features=UseOzonePlatform flag.
    
    However, SwiftShader doesn't support such a build and always uses
    FrameBufferOzone. This is not correct when the browser is
    run without the Ozone feature enabled aka using old
    non-Ozone/X11 path. Basically, it results in crashes
    during swap buffers call.
    
    The very naive solution is to try to test the display. If we
    can cast it to XDisplay and its valid, use X11 framebuffer.
    Otherwise, use Ozone. Though, I'm not 100% sure about the safiness
    of this check. Thus, we must be careful about that.
    
    This is one of the last patches that blocks enabling both
    use_x11 && use_ozone in Chromium.
    
    Bug: chromium:1119303
    Change-Id: I969798abd4d0bbacaffb7704161eac38e77d9311
    Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47868Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
    Tested-by: 's avatarMaksim Sisov <msisov@igalia.com>
    aba65a8e
FrameBufferFactoryOzone.cpp 1.1 KB
EditWeb IDE
×

Replace FrameBufferFactoryOzone.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.