1 --- gnome-control-center-2.28.1/capplets/about-me/gnome-about-me.c.orig 2009-10-29 15:44:32.817089000 +0800 2 +++ gnome-control-center-2.28.1/capplets/about-me/gnome-about-me.c 2009-10-29 15:46:11.660633000 +0800 3 @@ -799,6 +799,14 @@ 4 } 5 6 static void 7 +end_program (GtkWidget *widget, gpointer data) 8 +{ 9 + GnomeAboutMe *me = (GnomeAboutMe *)data; 10 + about_me_destroy (me); 11 + gtk_main_quit (); 12 +} 13 + 14 +static void 15 about_me_button_clicked_cb (GtkDialog *dialog, gint response_id, GnomeAboutMe *me) 16 { 17 if (response_id == GTK_RESPONSE_HELP) 18 @@ -808,9 +816,7 @@ 19 g_source_remove (me->commit_timeout_id); 20 about_me_commit (me); 21 } 22 - 23 - about_me_destroy (me); 24 - gtk_main_quit (); 25 + gtk_widget_destroy ((GtkWidget *)dialog); 26 } 27 } 28 29 @@ -879,6 +885,8 @@ 30 main_dialog = WID ("about-me-dialog"); 31 g_signal_connect (main_dialog, "response", 32 G_CALLBACK (about_me_button_clicked_cb), me); 33 + g_signal_connect (main_dialog, "destroy", 34 + G_CALLBACK (end_program), me); 35 36 gtk_window_set_resizable (GTK_WINDOW (main_dialog), FALSE); 37 capplet_set_icon (main_dialog, "user-info"); 38