aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--addressbook/ChangeLog7
-rw-r--r--addressbook/gui/contact-editor/e-contact-editor.c8
2 files changed, 13 insertions, 2 deletions
diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog
index 0cc69dd169..2d1ee37c11 100644
--- a/addressbook/ChangeLog
+++ b/addressbook/ChangeLog
@@ -1,3 +1,10 @@
+2007-08-02 Hiroyuki Ikezoe <poincare@ikezoe.net>
+
+ ** Fix for bug #462007
+
+ * gui/contact-editor/e-contact-editor.c: (update_preview_cb): Plugged
+ memory leak.
+
2007-07-31 Hiroyuki Ikezoe <poincare@ikezoe.net>
** Fix for bug #462002
diff --git a/addressbook/gui/contact-editor/e-contact-editor.c b/addressbook/gui/contact-editor/e-contact-editor.c
index 2c94e0cbd1..62a53ba25c 100644
--- a/addressbook/gui/contact-editor/e-contact-editor.c
+++ b/addressbook/gui/contact-editor/e-contact-editor.c
@@ -2791,8 +2791,12 @@ update_preview_cb (GtkFileChooser *file_chooser, gpointer data)
pixbuf = gdk_pixbuf_new_from_file_at_size (filename, 128, 128, NULL);
if (!pixbuf) {
- filename = e_icon_factory_get_icon_filename ("stock_person",E_ICON_SIZE_DIALOG);
- pixbuf = gdk_pixbuf_new_from_file_at_size (filename, 128, 128, NULL);
+ gchar *alternate_file;
+ alternate_file = e_icon_factory_get_icon_filename ("stock_person",E_ICON_SIZE_DIALOG);
+ if (alternate_file) {
+ pixbuf = gdk_pixbuf_new_from_file_at_size (alternate_file, 128, 128, NULL);
+ g_free (alternate_file);
+ }
}
g_free (filename);