ui/gtk-egl: move function calls back to regular code path
Commit6f189a08c1
("ui/gtk-egl: Check EGLSurface before doing scanout") introduced a regression when QEMU is running with a virtio-gpu-gl-device on a host under X11. After the guest has initialized the virtio-gpu-gl-device, the guest screen only shows "Display output is not active.". Commit6f189a08c1
moved all function calls in gd_egl_scanout_texture() to a code path which is only called once after gd_egl_init() succeeds in gd_egl_scanout_texture(). Move all function calls in gd_egl_scanout_texture() back to the regular code path so they get always called if one of the gd_egl_init() calls was successful. Fixes:6f189a08c1
("ui/gtk-egl: Check EGLSurface before doing scanout") Signed-off-by: Volker Rümelin <vr_qemu@t-online.de> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20231111104020.26183-1-vr_qemu@t-online.de> (cherry picked from commit53a939f1bf
) Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
parent
5a92f023d9
commit
5133410f8b
14
ui/gtk-egl.c
14
ui/gtk-egl.c
@ -249,14 +249,14 @@ void gd_egl_scanout_texture(DisplayChangeListener *dcl,
|
||||
if (!vc->gfx.esurface) {
|
||||
return;
|
||||
}
|
||||
|
||||
eglMakeCurrent(qemu_egl_display, vc->gfx.esurface,
|
||||
vc->gfx.esurface, vc->gfx.ectx);
|
||||
|
||||
gtk_egl_set_scanout_mode(vc, true);
|
||||
egl_fb_setup_for_tex(&vc->gfx.guest_fb, backing_width, backing_height,
|
||||
backing_id, false);
|
||||
}
|
||||
|
||||
eglMakeCurrent(qemu_egl_display, vc->gfx.esurface,
|
||||
vc->gfx.esurface, vc->gfx.ectx);
|
||||
|
||||
gtk_egl_set_scanout_mode(vc, true);
|
||||
egl_fb_setup_for_tex(&vc->gfx.guest_fb, backing_width, backing_height,
|
||||
backing_id, false);
|
||||
}
|
||||
|
||||
void gd_egl_scanout_dmabuf(DisplayChangeListener *dcl,
|
||||
|
Loading…
Reference in New Issue
Block a user