summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorHervé Poussineau <hpoussin@reactos.org>2015-03-24 20:08:48 +0100
committerGerd Hoffmann <kraxel@redhat.com>2015-03-26 17:58:12 +0100
commit4cdfc93526364bc9b20a21c9edd802d737cec85f (patch)
treed6948c3dd08ff19125440c738872ece1678c4027
parent054903a832b865eb5432d79b5c9d1e1ff31b58d7 (diff)
downloadfocaccia-qemu-4cdfc93526364bc9b20a21c9edd802d737cec85f.tar.gz
focaccia-qemu-4cdfc93526364bc9b20a21c9edd802d737cec85f.zip
gtk: do not call gtk_widget_get_window if drawing area is not initialized
This prevents gtk_widget_get_window to return a NULL pointer.

Signed-off-by: Hervé Poussineau <hpoussin@reactos.org>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-rw-r--r--ui/gtk.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/ui/gtk.c b/ui/gtk.c
index 6a81076ffc..51abac9f47 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -294,6 +294,10 @@ static void gd_update_cursor(VirtualConsole *vc)
         return;
     }
 
+    if (!gtk_widget_get_realized(vc->gfx.drawing_area)) {
+        return;
+    }
+
     window = gtk_widget_get_window(GTK_WIDGET(vc->gfx.drawing_area));
     if (s->full_screen || qemu_input_is_absolute() || s->ptr_owner == vc) {
         gdk_window_set_cursor(window, s->null_cursor);
@@ -458,6 +462,10 @@ static void gd_update(DisplayChangeListener *dcl,
 
     trace_gd_update(vc->label, x, y, w, h);
 
+    if (!gtk_widget_get_realized(vc->gfx.drawing_area)) {
+        return;
+    }
+
     if (vc->gfx.convert) {
         pixman_image_composite(PIXMAN_OP_SRC, vc->gfx.ds->image,
                                NULL, vc->gfx.convert,
@@ -540,6 +548,10 @@ static void gd_cursor_define(DisplayChangeListener *dcl,
     GdkPixbuf *pixbuf;
     GdkCursor *cursor;
 
+    if (!gtk_widget_get_realized(vc->gfx.drawing_area)) {
+        return;
+    }
+
     pixbuf = gdk_pixbuf_new_from_data((guchar *)(c->data),
                                       GDK_COLORSPACE_RGB, true, 8,
                                       c->width, c->height, c->width * 4,