diff options
Diffstat (limited to 'sametime/session.cpp')
-rw-r--r-- | sametime/session.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/sametime/session.cpp b/sametime/session.cpp index 99ef6be..1f09da1 100644 --- a/sametime/session.cpp +++ b/sametime/session.cpp @@ -365,15 +365,20 @@ unsigned long __stdcall SessionThread(LPVOID param) { EnterCriticalSection(&session_cs);
session = mwSession_new(&handler);
- mwSession_setProperty(session, mwSession_CLIENT_VER_MAJOR, (gpointer)(int)(DBGetContactSettingWord(0, PROTO, "ClientVersionMajor", MW_PROTOCOL_VERSION_MAJOR)), 0);
- mwSession_setProperty(session, mwSession_CLIENT_VER_MINOR, (gpointer)(int)(DBGetContactSettingWord(0, PROTO, "ClientVersionMinor", MW_PROTOCOL_VERSION_MINOR)), 0);
-
InitMeanwhileServices();
mwSession_setProperty(session, mwSession_AUTH_USER_ID, options.id, NULL);
mwSession_setProperty(session, mwSession_AUTH_PASSWORD, options.pword, NULL);
mwSession_setProperty(session, mwSession_CLIENT_TYPE_ID, (void *)options.client_id, NULL);
+ if(options.use_old_default_client_ver) {
+ mwSession_setProperty(session, mwSession_CLIENT_VER_MAJOR, GUINT_TO_POINTER(DBGetContactSettingWord(0, PROTO, "ClientVersionMajor", MW_PROTOCOL_VERSION_MAJOR)), 0);
+ mwSession_setProperty(session, mwSession_CLIENT_VER_MINOR, GUINT_TO_POINTER(DBGetContactSettingWord(0, PROTO, "ClientVersionMinor", MW_PROTOCOL_VERSION_MINOR)), 0);
+ } else {
+ mwSession_setProperty(session, mwSession_CLIENT_VER_MAJOR, GUINT_TO_POINTER(DBGetContactSettingWord(0, PROTO, "ClientVersionMajor", 0x001e)), 0);
+ mwSession_setProperty(session, mwSession_CLIENT_VER_MINOR, GUINT_TO_POINTER(DBGetContactSettingWord(0, PROTO, "ClientVersionMinor", 0x196f)), 0);
+ }
+
mwSession_start(session);
LeaveCriticalSection(&session_cs);
|