summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--init.cpp7
-rw-r--r--messages.cpp6
-rw-r--r--options.cpp5
-rw-r--r--utilities.cpp4
4 files changed, 14 insertions, 8 deletions
diff --git a/init.cpp b/init.cpp
index b620cb0..7523ef4 100644
--- a/init.cpp
+++ b/init.cpp
@@ -19,6 +19,7 @@
//global variables
bool bAppendTags = false, bDebugLog = false, bJabberAPI = false;
TCHAR *inopentag = NULL, *inclosetag = NULL, *outopentag = NULL, *outclosetag = NULL, *password = NULL;
+bool bIsMiranda09 = false;
list <JabberAccount*> Accounts;
@@ -156,13 +157,15 @@ static int OnModulesLoaded(WPARAM wParam,LPARAM lParam)
void FirstRun();
FirstRun();
InitCheck();
+
+ bIsMiranda09 = (DWORD)CallService(MS_SYSTEM_GETVERSION, 0, 0) >= 0x00090100?true:false;
- if(bJabberAPI)
+ if(bJabberAPI && bIsMiranda09)
GetJabberInterface(0,0);
HookEvent(ME_OPT_INITIALISE, GpgOptInit);
HookEvent(ME_DB_EVENT_FILTER_ADD, HookSendMsg);
- if(bJabberAPI)
+ if(bJabberAPI && bIsMiranda09)
HookEvent(ME_PROTO_ACCLISTCHANGED, GetJabberInterface);
// HookEvent(ME_NETLIB_FASTSEND, TestHook);
hOnPreBuildContactMenu = HookEvent(ME_CLIST_PREBUILDCONTACTMENU, OnPreBuildContactMenu);
diff --git a/messages.cpp b/messages.cpp
index 7b294d4..ad87255 100644
--- a/messages.cpp
+++ b/messages.cpp
@@ -247,7 +247,7 @@ int SendMsgSvc(WPARAM w, LPARAM l)
DWORD code;
wstring cmd;
wstring path;
- extern bool bJabberAPI;
+ extern bool bJabberAPI, bIsMiranda09;
char *tmp = UniGetContactSettingUtf(ccs->hContact, szGPGModuleName, "KeyID", "");
if(strlen(tmp) < 2)
{
@@ -255,7 +255,7 @@ int SendMsgSvc(WPARAM w, LPARAM l)
HistoryLog(ccs->hContact, "Failed to encrypt message with GPG", EVENTTYPE_MESSAGE, DBEF_SENT);
return CallService(MS_PROTO_CHAINSEND, w, l);
}
- if(!bJabberAPI)
+ if(!bJabberAPI || !bIsMiranda09)
cmd += _T("--comment \"\" --no-version ");
if(DBGetContactSettingByte(ccs->hContact, szGPGModuleName, "bAlwaysTrust", 0))
cmd += _T("--trust-model always ");
@@ -313,7 +313,7 @@ int SendMsgSvc(WPARAM w, LPARAM l)
TCHAR tmp[128];
f.getline(tmp, 128);
str.append(tmp);
- if(bJabberAPI)
+ if(bJabberAPI && bIsMiranda09)
str.append(_T("\n"));
else
str.append(_T("\r\n"));
diff --git a/options.cpp b/options.cpp
index 99d23f6..734a591 100644
--- a/options.cpp
+++ b/options.cpp
@@ -94,6 +94,7 @@ static BOOL CALLBACK DlgProcGpgOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARA
LVITEM item = {0};
TCHAR *tmp = NULL;
char *tmp2 = NULL;
+ extern bool bIsMiranda09;
NMLISTVIEW * hdr = (NMLISTVIEW *) lParam;
switch (msg)
{
@@ -173,7 +174,9 @@ static BOOL CALLBACK DlgProcGpgOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARA
SetDlgItemText(hwndDlg, IDC_LOG_FILE_EDIT, (_tcslen(tmp) > 1)?tmp:_T("c:\\GPGdebug.log"));
mir_free(tmp);
CheckStateLoadDB(hwndDlg, IDC_DEBUG_LOG, "bDebugLog", 0);
- CheckStateLoadDB(hwndDlg, IDC_JABBER_API, "bJabberAPI", 1);
+ EnableWindow(GetDlgItem(hwndDlg, IDC_JABBER_API), bIsMiranda09);
+ if(bIsMiranda09)
+ CheckStateLoadDB(hwndDlg, IDC_JABBER_API, "bJabberAPI", 1);
return TRUE;
}
diff --git a/utilities.cpp b/utilities.cpp
index 2fbc8fb..d64e8ad 100644
--- a/utilities.cpp
+++ b/utilities.cpp
@@ -344,8 +344,8 @@ int GetJabberInterface(WPARAM w, LPARAM l) //get interface for all jabber accoun
static JABBER_HANDLER_FUNC SendHandler(IJabberInterface *ji, HXML node, void *pUserData)
{
- extern bool bJabberAPI;
- if(!bJabberAPI)
+ extern bool bJabberAPI, bIsMiranda09;
+ if(!bJabberAPI || !bIsMiranda09)
return FALSE;
HXML local_node = node;
for(int n = 0; n <= xi.getChildCount(node); n++)