diff options
Diffstat (limited to 'main.cpp')
-rw-r--r-- | main.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
@@ -206,10 +206,15 @@ static BOOL CALLBACK DlgProcFirstRun(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM DBWriteContactSettingTString(NULL, szGPGModuleName, "KeyID", fp); TCHAR passwd[64]; GetDlgItemText(hwndDlg, IDC_KEY_PASSWORD, passwd, 64); - if(_tcslen(passwd) > 0) - DBWriteContactSettingTString(NULL, szGPGModuleName, "szKeyPassword", passwd); - else - DBDeleteContactSetting(NULL, szGPGModuleName, "szKeyPassword"); + if(passwd[0]) + { + string dbsetting = "szKey_"; + char *keyid = mir_t2a(fp); + dbsetting += keyid; + mir_free(keyid); + dbsetting += "_Password"; + DBWriteContactSettingTString(NULL, szGPGModuleName, dbsetting.c_str(), passwd); + } DBWriteContactSettingByte(NULL, szGPGModuleName, "FirstRun", 0); { wstring keyinfo = _T("Current private key id: "); |