summaryrefslogtreecommitdiff
path: root/plugins/New_GPG/src/options.cpp
diff options
context:
space:
mode:
authorAlexander Gluzsky <sss123next@list.ru>2013-07-31 23:16:34 +0000
committerAlexander Gluzsky <sss123next@list.ru>2013-07-31 23:16:34 +0000
commitdaf3e389b479f28b306e7c88ecc49119f0bbf542 (patch)
tree8858bf836dc1009ddaf1718525ff8965fd127754 /plugins/New_GPG/src/options.cpp
parent971d0acab1eb3c9405e8b0e8d839c3f751af2e5b (diff)
fixed few logic bugs
fixed few memory leaks prevent db helper functions from returning uninitialized ptr git-svn-id: http://svn.miranda-ng.org/main/trunk@5542 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/New_GPG/src/options.cpp')
-rwxr-xr-xplugins/New_GPG/src/options.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/plugins/New_GPG/src/options.cpp b/plugins/New_GPG/src/options.cpp
index 2c276d6093..c1803c92ef 100755
--- a/plugins/New_GPG/src/options.cpp
+++ b/plugins/New_GPG/src/options.cpp
@@ -521,7 +521,10 @@ static INT_PTR CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam,
params.out = &out;
params.code = &code;
params.result = &result;
+ auto old_gpg_state = gpg_valid;
+ gpg_valid = true;
gpg_launcher(params);
+ gpg_valid = old_gpg_state;
db_set_ts(NULL, szGPGModuleName, "szGpgBinPath", tmp_path);
mir_free(tmp_path);
string::size_type p1 = out.find("(GnuPG) ");
@@ -569,6 +572,7 @@ static INT_PTR CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam,
tmp = mir_a2t(p_path);
SetDlgItemText(hwndDlg, IDC_HOME_DIR, tmp);
}
+ mir_free(atmp);
}
break;
default:
@@ -846,6 +850,7 @@ static INT_PTR CALLBACK DlgProcLoadPublicKey(HWND hwndDlg,UINT msg,WPARAM wParam
TCHAR *tmp3 = mir_a2t(out.c_str());
str.clear();
str.append(tmp3);
+ mir_free(tmp3);
string msg = Translate("Load Public GPG Key for ");
msg += (char*)CallService(MS_CLIST_GETCONTACTDISPLAYNAME, (WPARAM)hcnt, 0);
msg += " (Key ID: ";