From 8a0f9b5263bb3a96d574ca78ad3b8f1d7bf8b12b Mon Sep 17 00:00:00 2001 From: zhanghailiang Date: Fri, 14 Nov 2014 11:25:28 +0800 Subject: gtk: fix possible memory leak about local_err local_err in gd_vc_gfx_init() is not freed, and we don't use it, so remove it. Signed-off-by: zhanghailiang Signed-off-by: Gerd Hoffmann --- ui/gtk.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ui/gtk.c b/ui/gtk.c index 38bf463392..9496b8d24f 100644 --- a/ui/gtk.c +++ b/ui/gtk.c @@ -1666,10 +1666,9 @@ static GSList *gd_vc_gfx_init(GtkDisplayState *s, VirtualConsole *vc, QemuConsole *con, int idx, GSList *group, GtkWidget *view_menu) { - Error *local_err = NULL; Object *obj; - obj = object_property_get_link(OBJECT(con), "device", &local_err); + obj = object_property_get_link(OBJECT(con), "device", NULL); if (obj) { vc->label = g_strdup_printf("%s", object_get_typename(obj)); } else { -- cgit v1.2.1 From b310a2a6095ec927a42cc1aba520a316be0faf51 Mon Sep 17 00:00:00 2001 From: Fam Zheng Date: Fri, 21 Nov 2014 09:59:09 +0800 Subject: gtk: Don't crash if -nodefaults This fixes a crash by just skipping the vte resize hack if cur is NULL. Reproducer: qemu-system-x86_64 -nodefaults Signed-off-by: Fam Zheng Signed-off-by: Gerd Hoffmann --- ui/gtk.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/ui/gtk.c b/ui/gtk.c index 9496b8d24f..0385757bf5 100644 --- a/ui/gtk.c +++ b/ui/gtk.c @@ -1909,15 +1909,17 @@ void gtk_display_init(DisplayState *ds, bool full_screen, bool grab_on_hover) #ifdef VTE_RESIZE_HACK { VirtualConsole *cur = gd_vc_find_current(s); - int i; - - for (i = 0; i < s->nb_vcs; i++) { - VirtualConsole *vc = &s->vc[i]; - if (vc && vc->type == GD_VC_VTE && vc != cur) { - gtk_widget_hide(vc->vte.terminal); + if (cur) { + int i; + + for (i = 0; i < s->nb_vcs; i++) { + VirtualConsole *vc = &s->vc[i]; + if (vc && vc->type == GD_VC_VTE && vc != cur) { + gtk_widget_hide(vc->vte.terminal); + } } + gd_update_windowsize(cur); } - gd_update_windowsize(cur); } #endif -- cgit v1.2.1