libnm-util: free PPPoE setting private data members

==23089== 342 bytes in 38 blocks are definitely lost in loss record 4,870 of 5,123
==23089==    at 0x4A0881C: malloc (vg_replace_malloc.c:270)
==23089==    by 0x39B905488E: g_malloc (gmem.c:159)
==23089==    by 0x39B906A4BB: g_strdup (gstrfuncs.c:356)
==23089==    by 0x31FC02DA90: set_property (nm-setting-pppoe.c:220)
==23089==    by 0x39B9819972: g_object_set_property (gobject.c:1352)
==23089==    by 0x31FC01A9A7: nm_setting_enumerate_values (nm-setting.c:589)
==23089==    by 0x31FC01AA81: nm_setting_duplicate (nm-setting.c:264)
==23089==    by 0x31FC01633B: duplicate_cb (nm-connection.c:1182)
==23089==    by 0x39B903F8DF: g_hash_table_foreach (ghash.c:1524)
==23089==    by 0x31FC01756C: nm_connection_duplicate (nm-connection.c:1203)
==23089==    by 0x4A7BE3: get_settings_auth_cb (nm-settings-connection.c:1062)
==23089==    by 0x4A5624: auth_start (nm-settings-connection.c:1008)
This commit is contained in:
Dan Williams 2013-03-07 18:06:38 -06:00
parent ca00badb03
commit c22e4da986

View file

@ -257,6 +257,18 @@ get_property (GObject *object, guint prop_id,
}
}
static void
finalize (GObject *object)
{
NMSettingPPPOEPrivate *priv = NM_SETTING_PPPOE_GET_PRIVATE (object);
g_free (priv->username);
g_free (priv->password);
g_free (priv->service);
G_OBJECT_CLASS (nm_setting_pppoe_parent_class)->finalize (object);
}
static void
nm_setting_pppoe_class_init (NMSettingPPPOEClass *setting_class)
{
@ -268,6 +280,7 @@ nm_setting_pppoe_class_init (NMSettingPPPOEClass *setting_class)
/* virtual methods */
object_class->set_property = set_property;
object_class->get_property = get_property;
object_class->finalize = finalize;
parent_class->verify = verify;
parent_class->need_secrets = need_secrets;