OSDN Git Service

gtk: fix wrong id between texture and framebuffer
authorAnthoine Bourgeois <anthoine.bourgeois@blade-group.com>
Mon, 2 Oct 2017 12:40:52 +0000 (14:40 +0200)
committerGerd Hoffmann <kraxel@redhat.com>
Mon, 16 Oct 2017 12:50:54 +0000 (14:50 +0200)
The gd_gl_area_scanout_texture must destroy framebuffer if there is
no texture id instead of no framebuffer id.
The effect was a black screen with "-vga virtio -display gtk,gl=on"
options.
The bug was introduce by a4f113fd "gtk: use framebuffer helper functions."

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@blade-group.com>
Message-id: 20171002124052.13829-1-anthoine.bourgeois@gmail.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
ui/gtk-gl-area.c

index 01ebf2c..7080f4e 100644 (file)
@@ -178,8 +178,7 @@ void gd_gl_area_scanout_texture(DisplayChangeListener *dcl,
 
     gtk_gl_area_make_current(GTK_GL_AREA(vc->gfx.drawing_area));
 
-    if (vc->gfx.guest_fb.framebuffer  == 0 ||
-        vc->gfx.w == 0 || vc->gfx.h == 0) {
+    if (backing_id == 0 || vc->gfx.w == 0 || vc->gfx.h == 0) {
         gtk_gl_area_set_scanout_mode(vc, false);
         return;
     }