From ab62cd41fab9a0c941d035041df98f4ae3346339 Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Wed, 26 Oct 2011 12:52:42 +0300 Subject: fixed crash in password enter dialog again --- messages.cpp | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'messages.cpp') diff --git a/messages.cpp b/messages.cpp index 1d7e555..dc249da 100755 --- a/messages.cpp +++ b/messages.cpp @@ -924,23 +924,20 @@ static BOOL CALLBACK DlgProcKeyPassword(HWND hwndDlg, UINT msg, WPARAM wParam, L if(_tcslen(tmp) > 0) { extern TCHAR *password; - if(password && password[0]) + if(IsDlgButtonChecked(hwndDlg, IDC_SAVE_PASSWORD)) { - if(IsDlgButtonChecked(hwndDlg, IDC_SAVE_PASSWORD)) + if(inkeyid && inkeyid[0] && !IsDlgButtonChecked(hwndDlg, IDC_DEFAULT_PASSWORD)) { - if((strlen(inkeyid) > 0) && !IsDlgButtonChecked(hwndDlg, IDC_DEFAULT_PASSWORD)) - { - string dbsetting = "szKey_"; - dbsetting += inkeyid; - dbsetting += "_Password"; - DBWriteContactSettingTString(NULL, szGPGModuleName, dbsetting.c_str(), tmp); - } - else - DBWriteContactSettingTString(NULL, szGPGModuleName, "szKeyPassword", tmp); + string dbsetting = "szKey_"; + dbsetting += inkeyid; + dbsetting += "_Password"; + DBWriteContactSettingTString(NULL, szGPGModuleName, dbsetting.c_str(), tmp); } - if(password) - delete [] password; + else + DBWriteContactSettingTString(NULL, szGPGModuleName, "szKeyPassword", tmp); } + if(password) + delete [] password; password = new TCHAR [_tcslen(tmp)+1]; _tcscpy(password, tmp); } -- cgit v1.2.3