Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-86177

Some subsurfaces change but are never committed

    XMLWordPrintable

Details

    • Linux/Wayland
    • b36a345d727eab37ee4ec4c2dc4674d5971c81d8 (qt/qtwayland/dev) 7193e64ef16a72b71d08a48f096ba854631d1b5f (qt/tqtc-qtwayland/tqtc/lts-5.15)

    Description

      Another potential issue spotted while working OBS Studio's port to be a native Wayland client. Have a look at the attached screenshot.

      There are lots of subsurfaces in this program, but there's this particular situation that involves 2 subsurfaces. Have a look in this snipped:

       [3445114.921] -> wl_compositor@4.create_surface(new id wl_surface@55)

      ...

      [3445125.333] -> wl_subcompositor@12.get_subsurface(new id wl_subsurface@62, wl_surface@55, wl_surface@24)
      [3445125.348] -> wl_subsurface@62.set_desync()

      [3445125.353] -> wl_surface@55.set_buffer_scale(1)

      [3445125.378] -> wl_subsurface@60.set_position(0, 0)
      [3445125.386] -> wl_subsurface@61.set_position(0, 22)
      [3445125.396] -> wl_subsurface@62.set_position(1006, 0)
      [3445125.408] -> wl_surface@55.set_buffer_transform(0)
      [3445125.414] -> wl_surface@55.commit()}} *//{{ ←←←←← This is the first and only commit of wl_surface@55}}

      [3447948.021] -> wl_subsurface@62.set_position(1006, 0)

      [3448025.196] -> wl_subsurface@62.set_position(1014, 0)

      ...

       

      The full log can be found here: obs wayland debug.txt

      As you can see, wl_subsurface@62 (subsurface object of wl_surface@55) has many calls to set_position(), but they are never committed. This surface has no buffer.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qt.team.graphics.and.multimedia Qt Graphics Team
            feaneron Georges Basile Stavracas Neto
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes