Skip to content
Snippets Groups Projects
  1. Apr 07, 2021
  2. Apr 06, 2021
  3. Apr 02, 2021
  4. Mar 31, 2021
  5. Mar 29, 2021
  6. Mar 27, 2021
    • Simon Ser's avatar
      render/egl, backend/wayland: add workaround for split render/display setups · b89bcffe
      Simon Ser authored
      Split render/display setups have two separate devices: one display-only
      with a primary node, and one render-only with a render node. However
      in these cases the EGL implementation and the Wayland compositor will
      advertise the display device instead of the render device [1]. The EGL
      implementation will magically open the render device when the display
      device is passed in.
      
      So just pass the display device as if it were a render device. Maybe in
      the future Mesa will advertise the render device instead and we'll be
      able to remove this workaround.
      
      [1]: mesa/mesa#4178
      b89bcffe
  7. Mar 26, 2021
  8. Mar 25, 2021
  9. Mar 23, 2021
  10. Mar 22, 2021
  11. Mar 16, 2021
    • Simon Ser's avatar
      Fix buffer blit matrices · c740fccc
      Simon Ser authored
      There was a missing wlr_matrix_scale call, so we ended up with black
      frames.
      
      Closes: https://github.com/swaywm/wlroots/issues/2780
      c740fccc
    • Simon Ser's avatar
      screencopy: stop using wlr_renderer_blit_dmabuf · 7720dde7
      Simon Ser authored
      The original motivation is the following crash:
      
          #0  0x00007f0ddeddeef5 in raise () at /usr/lib/libc.so.6
          #1  0x00007f0ddedc8862 in abort () at /usr/lib/libc.so.6
          #2  0x00007f0ddedc8747 in _nl_load_domain.cold () at /usr/lib/libc.so.6
          #3  0x00007f0ddedd7646 in  () at /usr/lib/libc.so.6
          #4  0x00007f0de033f8de in gles2_get_renderer_in_context (wlr_renderer=0x612000003640) at ../subprojects/wlroots/render/gles2/renderer.c:38
          #5  0x00007f0de0341675 in gles2_begin (wlr_renderer=0x612000003640, width=3840, height=2160) at ../subprojects/wlroots/render/gles2/renderer.c:186
          #6  0x00007f0de033b100 in wlr_renderer_begin (r=0x612000003640, width=3840, height=2160) at ../subprojects/wlroots/render/wlr_renderer.c:56
          #7  0x00007f0de03466ed in gles2_blit_dmabuf (wlr_renderer=0x612000003640, dst_attr=0x60b000150148, src_attr=0x7fff9f9bfde0) at ../subprojects/wlroots/render/gles2/renderer.c:591
          #8  0x00007f0de033d717 in wlr_renderer_blit_dmabuf (r=0x612000003640, dst=0x60b000150148, src=0x7fff9f9bfde0) at ../subprojects/wlroots/render/wlr_renderer.c:210
          #9  0x00007f0de04cbc3b in frame_handle_output_commit (listener=0x611000220bc8, data=0x7fff9f9c0050) at ../subprojects/wlroots/types/wlr_screencopy_v1.c:303
      
      The GLES2 renderer assumes it'll have a wlr_buffer to render to.
      
      Instead of accomodating for the edge-case of rendering without a
      wlr_buffer, drop wlr_renderer_blit_dmabuf calls and instead use
      wlr_renderer_bind_buffer just like the rest of the wlr_renderer users.
      wlr_renderer_blit_dmabuf is now unused in wlroots.
      
      The upside is that the new blit_dmabuf function in screencopy is
      renderer-agnostic.
      7720dde7
  12. Mar 15, 2021
Loading