gfio: kill ge on widget destroy
[fio.git] / gfio.c
diff --git a/gfio.c b/gfio.c
index 827133e1bb7675c8a1bb4545f13897172ea4ac51..b1e9b5f75ac234af1c7ea59bf9ce77b2669a5439 100644 (file)
--- a/gfio.c
+++ b/gfio.c
@@ -1746,6 +1746,9 @@ static void ge_destroy(struct gui_entry *ge)
 
 static void ge_widget_destroy(GtkWidget *w, gpointer data)
 {
+       struct gui_entry *ge = (struct gui_entry *) data;
+
+       ge_destroy(ge);
 }
 
 static void gfio_quit(struct gui *ui)
@@ -1763,7 +1766,7 @@ static void gfio_quit(struct gui *ui)
 static void quit_clicked(__attribute__((unused)) GtkWidget *widget,
                 __attribute__((unused)) gpointer data)
 {
-       gfio_quit(data);
+       gfio_quit(&main_ui);
 }
 
 static void *job_thread(void *arg)
@@ -2070,6 +2073,7 @@ static void gfio_client_added(struct gui_entry *ge, struct fio_client *client)
 
        gc = malloc(sizeof(*gc));
        memset(gc, 0, sizeof(*gc));
+       options_default_fill(&gc->o);
        gc->ge = ge;
        gc->client = fio_get_client(client);