commit 2e90cf549d7ecee6b35814a7701363954f6787c1
parent 75bec58016c944e21c0395fef399db039c5acfd5
Author: Andrej Kacian <ticho@claws-mail.org>
Date: Sun, 16 Jul 2017 17:53:38 +0200
Managesieve: fix memory leak when saving password from account prefs
Diffstat:
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/plugins/managesieve/sieve_prefs.c b/src/plugins/managesieve/sieve_prefs.c
@@ -377,9 +377,10 @@ static gint sieve_prefs_account_apply(struct SieveAccountPage *page)
config->host = gtk_editable_get_chars(GTK_EDITABLE(page->host_entry), 0, -1);
config->userid = gtk_editable_get_chars(GTK_EDITABLE(page->uid_entry), 0, -1);
- passwd_store_set_account(page->account->account_id, "sieve",
- gtk_editable_get_chars(GTK_EDITABLE(page->pass_entry), 0, -1),
- FALSE);
+ gchar *pwd = gtk_editable_get_chars(GTK_EDITABLE(page->pass_entry), 0, -1);
+ passwd_store_set_account(page->account->account_id, "sieve", pwd, FALSE);
+ memset(pwd, 0, strlen(pwd));
+ g_free(pwd);
config->auth_type = combobox_get_active_data(GTK_COMBO_BOX(page->auth_menu));
sieve_prefs_account_set_config(page->account, config);