From 41586c16b9672d26f54d465d6571df39a8aee8c8 Mon Sep 17 00:00:00 2001 From: Michal Schmidt Date: Tue, 23 Mar 2010 19:28:37 +0100 Subject: [PATCH] about_me_destroy() frees the whole data structure and it tries to do the right thing by setting "me = NULL" afterwards, but "me" in this case is not the global variable, but the local one which shadows it. So the global "me" remains non-NULL and when later about_me_focus_out() is called, it cannot know it should return early. It only makes sense for about_me_destroy() to operate on the global "me", so there's no point in passing it as a parameter. --- capplets/about-me/gnome-about-me.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/capplets/about-me/gnome-about-me.c b/capplets/about-me/gnome-about-me.c index 95519172a..755dba857 100644 --- a/capplets/about-me/gnome-about-me.c +++ b/capplets/about-me/gnome-about-me.c @@ -163,7 +163,7 @@ about_me_error (GtkWindow *parent, gchar *str) /********************/ static void -about_me_destroy (GnomeAboutMe *me) +about_me_destroy (void) { e_contact_address_free (me->addr1); e_contact_address_free (me->addr2); @@ -813,7 +813,7 @@ about_me_button_clicked_cb (GtkDialog *dialog, gint response_id, GnomeAboutMe *m about_me_commit (me); } - about_me_destroy (me); + about_me_destroy (); gtk_main_quit (); } } @@ -855,7 +855,7 @@ about_me_setup_dialog (void) gtk_container_add (GTK_CONTAINER (WID ("button-image")), me->image_chooser); if (dialog == NULL) { - about_me_destroy (me); + about_me_destroy (); return -1; } @@ -890,7 +890,7 @@ about_me_setup_dialog (void) about_me_error (NULL, _("There was an error while trying to get the addressbook information\n" \ "Evolution Data Server can't handle the protocol")); g_clear_error (&error); - about_me_destroy (me); + about_me_destroy (); return -1; }