xwayland-eglstream: fix X11 rendering to flipping GL / VK window

If a window is being used for direct rendering with OpenGL or Vulkan, and is
using the flipping path for presentation, it's pixmap will be set to a dma-buf
backed pixmap created by the client-side GL driver. However, this means that
xwl_glamor_eglstream_post_damage won't work since it requires that the pixmap
has an EGLSurface that it can render to, which dma-buf backed pixmaps do not.

In this case, though, xwl_glamor_eglstream_post_damage is not necessary since
glamor will have rendered directly to the pixmap, so we can simply pass it
directly to the compositor. There's no need for the intermediate copy we
normally do in that function.

Therefore, this change adds an early-return case to post_damage for dma-buf
backed pixmaps, and removes the corresponding asserts from that function and
allow_commits.

Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com>
Acked-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
5 jobs for xwayland-eglstream-glx in 6 minutes and 17 seconds (queued for 1 second)
Status Job ID Name Coverage
  Docker Image
passed #9344530
debian-buster

00:00:10

 
  Build And Test
passed #9344531
autotools

00:06:06

passed #9344532
meson

00:02:32

passed #9344533
meson-noglamor

00:02:33

passed #9344534
mingw-cross-build

00:01:11