summaryrefslogtreecommitdiff
path: root/tp-account-widgets
diff options
context:
space:
mode:
authorChristophe Fergeau <cfergeau@redhat.com>2015-07-29 09:49:27 +0200
committerChristophe Fergeau <cfergeau@redhat.com>2015-07-30 11:44:29 +0200
commit568fd67cab805bc6595c34f7a3cacc5f5e7e4d70 (patch)
tree2964fe5a80e15ab2db57583521011c8b2bdc5715 /tp-account-widgets
parenta46f4319089a27b5948a8941201a2de3d442e487 (diff)
downloadtelepathy-account-widgets-568fd67cab805bc6595c34f7a3cacc5f5e7e4d70.tar.gz
account-widget: Fix 'default_display_name' leak
do_constructed() leaks the string returned by tpaw_account_widget_get_default_display_name(): ==15713== 21 bytes in 1 blocks are definitely lost in loss record 3,415 of 16,664 ==15713== at 0x4A06C50: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==15713== by 0x36E2E76B57: vasprintf (vasprintf.c:76) ==15713== by 0x7F60DD2: g_vasprintf (gprintf.c:316) ==15713== by 0x7F30D70: g_strdup_vprintf (gstrfuncs.c:507) ==15713== by 0x7F30E15: g_strdup_printf (gstrfuncs.c:533) ==15713== by 0x4FAAD98: tpaw_account_widget_get_default_display_name (tpaw-account-widget.c:2192) ==15713== by 0x4FAA444: do_constructed (tpaw-account-widget.c:1960) ==15713== by 0x7C7CC10: g_object_new_internal (gobject.c:1814) ==15713== by 0x7C7D71A: g_object_new_valist (gobject.c:2033) ==15713== by 0x7C7C6C5: g_object_new (gobject.c:1617) ==15713== by 0x4FAABCC: tpaw_account_widget_new_for_protocol (tpaw-account-widget.c:2127) ==15713== by 0x4F81352: edit_connection_parameters (goatelepathyprovider.c:544) https://bugzilla.gnome.org/show_bug.cgi?id=752938
Diffstat (limited to 'tp-account-widgets')
-rw-r--r--tp-account-widgets/tpaw-account-widget.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/tp-account-widgets/tpaw-account-widget.c b/tp-account-widgets/tpaw-account-widget.c
index 93b672de..64a97d15 100644
--- a/tp-account-widgets/tpaw-account-widget.c
+++ b/tp-account-widgets/tpaw-account-widget.c
@@ -1787,7 +1787,8 @@ static void
do_constructed (GObject *obj)
{
TpawAccountWidget *self = TPAW_ACCOUNT_WIDGET (obj);
- const gchar *display_name, *default_display_name;
+ const gchar *display_name;
+ gchar *default_display_name;
guint i = 0;
struct {
const gchar *cm_name;
@@ -1967,6 +1968,7 @@ do_constructed (GObject *obj)
g_object_set (self->priv->settings, "display-name-overridden", TRUE,
NULL);
}
+ g_free (default_display_name);
}
static void