summaryrefslogtreecommitdiff
path: root/plugins/New_GPG
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/New_GPG')
-rwxr-xr-xplugins/New_GPG/src/init.cpp5
-rwxr-xr-xplugins/New_GPG/src/main.cpp14
-rwxr-xr-xplugins/New_GPG/src/utilities.cpp26
3 files changed, 24 insertions, 21 deletions
diff --git a/plugins/New_GPG/src/init.cpp b/plugins/New_GPG/src/init.cpp
index 66fd9400f5..959eaf9813 100755
--- a/plugins/New_GPG/src/init.cpp
+++ b/plugins/New_GPG/src/init.cpp
@@ -83,6 +83,7 @@ void init_vars()
bAutoExchange = DBGetContactSettingByte(NULL, szGPGModuleName, "bAutoExchange", 0);
password = UniGetContactSettingUtf(NULL, szGPGModuleName, "szKeyPassword", _T(""));
debuglog.init();
+ bIsMiranda09 = (DWORD)CallService(MS_SYSTEM_GETVERSION, 0, 0) >= 0x00090001?true:false;
bJabberAPI = DBGetContactSettingByte(NULL, szGPGModuleName, "bJabberAPI", bIsMiranda09?1:0);
bPresenceSigning = DBGetContactSettingByte(NULL, szGPGModuleName, "bPresenceSigning", 0);
bFileTransfers = DBGetContactSettingByte(NULL, szGPGModuleName, "bFileTransfers", 0);
@@ -122,9 +123,9 @@ static int OnModulesLoaded(WPARAM wParam,LPARAM lParam)
void InitCheck();
void FirstRun();
- bIsMiranda09 = (DWORD)CallService(MS_SYSTEM_GETVERSION, 0, 0) >= 0x00090001?true:false;
FirstRun();
- InitCheck();
+ if(!DBGetContactSettingByte(NULL, szGPGModuleName, "FirstRun", 1))
+ InitCheck();
InitIconLib();
if(ServiceExists(MS_MSG_ADDICON))
{
diff --git a/plugins/New_GPG/src/main.cpp b/plugins/New_GPG/src/main.cpp
index 8c66eee04a..730cbc262a 100755
--- a/plugins/New_GPG/src/main.cpp
+++ b/plugins/New_GPG/src/main.cpp
@@ -691,16 +691,16 @@ static INT_PTR CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam,
case WM_INITDIALOG:
{
TranslateDialogDefault(hwndDlg);
- TCHAR *path = new TCHAR [MAX_PATH];
+ TCHAR *path = (TCHAR*)mir_alloc(sizeof(TCHAR) * MAX_PATH);
bool gpg_exists = false, lang_exists = false;
{
- char *mir_path = new char [MAX_PATH];
+ char *mir_path = (char*)mir_alloc(sizeof(char) * MAX_PATH);
CallService(MS_UTILS_PATHTOABSOLUTE, (WPARAM)"\\", (LPARAM)mir_path);
SetCurrentDirectoryA(mir_path);
tmp = mir_a2t(mir_path);
mir_free(mir_path);
mir_realloc(path, (_tcslen(path)+128)*sizeof(TCHAR));
- TCHAR *gpg_path = new TCHAR [MAX_PATH], *gpg_lang_path = new TCHAR [MAX_PATH];
+ TCHAR *gpg_path = (TCHAR*)mir_alloc(sizeof(TCHAR) * MAX_PATH), *gpg_lang_path = (TCHAR*)mir_alloc(sizeof(TCHAR) * MAX_PATH);
_tcscpy(gpg_path, tmp);
_tcscat(gpg_path, _T("\\GnuPG\\gpg.exe"));
_tcscpy(gpg_lang_path, tmp);
@@ -737,7 +737,7 @@ static INT_PTR CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam,
}
else
tmp = mir_wstrdup(path);
- delete [] path;
+ mir_free(path);
SetDlgItemText(hwndDlg, IDC_BIN_PATH, tmp);
bool bad_version = false;
if(gpg_exists && lang_exists)
@@ -785,9 +785,9 @@ static INT_PTR CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam,
wstring path_ = _wgetenv(_T("APPDATA"));
path_ += _T("\\GnuPG");
tmp = UniGetContactSettingUtf(NULL, szGPGModuleName, "szHomePath", (TCHAR*)path_.c_str());
+ SetDlgItemText(hwndDlg, IDC_HOME_DIR, !gpg_exists?tmp:_T("gpg"));
+ mir_free(tmp);
}
- SetDlgItemText(hwndDlg, IDC_HOME_DIR, !gpg_exists?tmp:_T("gpg"));
- mir_free(tmp);
if(gpg_exists && lang_exists && !bad_version)
MessageBox(0, TranslateT("Your GPG version is supported. The language file was found.\nGPG plugin should work fine.\nPress OK to continue."), TranslateT("Info"), MB_OK);
extern bool bIsMiranda09;
@@ -1139,6 +1139,8 @@ static INT_PTR CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam,
break;
case WM_DESTROY:
hwndSetDirs = NULL;
+ void InitCheck();
+ InitCheck();
break;
}
diff --git a/plugins/New_GPG/src/utilities.cpp b/plugins/New_GPG/src/utilities.cpp
index b71a856eb4..bdde73c971 100755
--- a/plugins/New_GPG/src/utilities.cpp
+++ b/plugins/New_GPG/src/utilities.cpp
@@ -1823,18 +1823,18 @@ INT_PTR ImportGpGKeys(WPARAM w, LPARAM l)
}
void fix_line_term(std::string &s)
-{
- for(std::string::size_type s1 = s.find("\r\r", 0); s1 != string::npos; s1 = s.find("\r\r", s1))
- s.erase(s1, 1);
-}
-
-void fix_line_term(std::wstring &s)
-{
- for(std::wstring::size_type s1 = s.find(_T("\r\r"), 0); s1 != wstring::npos; s1 = s.find(_T("\r\r"), s1))
- s.erase(s1, 1);
-}
-
-void strip_line_term(std::wstring &s)
+{
+ for(std::string::size_type s1 = s.find("\r\r", 0); s1 != string::npos; s1 = s.find("\r\r", s1))
+ s.erase(s1, 1);
+}
+
+void fix_line_term(std::wstring &s)
+{
+ for(std::wstring::size_type s1 = s.find(_T("\r\r"), 0); s1 != wstring::npos; s1 = s.find(_T("\r\r"), s1))
+ s.erase(s1, 1);
+}
+
+void strip_line_term(std::wstring &s)
{
for(std::wstring::size_type i = s.find(_T("\r")); i != std::wstring::npos; i = s.find(_T("\r"), i+1))
s.erase(i, 1);
@@ -1842,7 +1842,7 @@ void strip_line_term(std::wstring &s)
s.erase(i, 1);
}
-void strip_line_term(std::string &s)
+void strip_line_term(std::string &s)
{
for(std::string::size_type i = s.find("\r"); i != std::string::npos; i = s.find("\r", i+1))
s.erase(i, 1);