summaryrefslogtreecommitdiff
path: root/meta2/settings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'meta2/settings.cpp')
-rw-r--r--meta2/settings.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/meta2/settings.cpp b/meta2/settings.cpp
index 06c9b9f..b646d0b 100644
--- a/meta2/settings.cpp
+++ b/meta2/settings.cpp
@@ -23,7 +23,7 @@ int ServiceFuncRedirect(const char *service,WPARAM wParam, LPARAM lParam, Servic
if(strcmp(MS_DB_CONTACT_ENUMSETTINGS, service) == 0) {
DBCONTACTENUMSETTINGS *ces = (DBCONTACTENUMSETTINGS *)lParam;
if(IsMetacontact(hContact) && strcmp(ces->szModule, MODULE) != 0) {
- HANDLE hSub = Meta_GetMostOnline(hContact);
+ HANDLE hSub = Meta_GetActive(hContact);
return coreServiceFunc(service, (WPARAM)hSub, lParam);
} else
return coreServiceFunc(service, wParam, lParam);
@@ -53,6 +53,10 @@ int ServiceFuncRedirect(const char *service,WPARAM wParam, LPARAM lParam, Servic
|| strcmp(szSetting, "Handle") == 0
|| strcmp(szSetting, "WindowOpen") == 0
|| strcmp(szSetting, "ParentMetaID") == 0
+ || strcmp(szSetting, "Default") == 0
+ || strcmp(szSetting, "ForceDefault") == 0
+ || strcmp(szSetting, "ForceSend") == 0
+ || strcmp(szSetting, "TempDefault") == 0
|| strcmp(szSetting, "Status") == 0))
|| !IsMetacontact(hContact))
{
@@ -63,7 +67,7 @@ int ServiceFuncRedirect(const char *service,WPARAM wParam, LPARAM lParam, Servic
int ret;
if((ret = coreServiceFunc(service, (WPARAM)hMeta, lParam)) != 0) {
// if the setting does not exist in the metacontact, get it from the most online subcontact
- HANDLE hSub = Meta_GetMostOnline(hMeta);
+ HANDLE hSub = Meta_GetActive(hMeta);
if(!hSub) return ret; // no most online - fail
if((ret = coreServiceFunc(service, (WPARAM)hSub, lParam)) != 0) {
// if it does not exist in the subcontact and we're using the meta proto module, try changing the module to the subcontact proto module