diff options
Diffstat (limited to 'metacontacts/meta_utils.c')
-rw-r--r-- | metacontacts/meta_utils.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/metacontacts/meta_utils.c b/metacontacts/meta_utils.c index f6fcb74..6077117 100644 --- a/metacontacts/meta_utils.c +++ b/metacontacts/meta_utils.c @@ -501,7 +501,7 @@ HANDLE Meta_GetMostOnlineSupporting(HANDLE hMeta, int pflagnum, unsigned long ca if(proto && CallProtoService(proto, PS_GETSTATUS, 0, 0) >= ID_STATUS_ONLINE) {
caps = proto ? CallProtoService(proto, PS_GETCAPS, (WPARAM)pflagnum, 0) : 0;
if(proto && strcmp(proto, "IRC") == 0) caps |= PF1_IM;
- if(proto && (caps & capability) == capability) {
+ if(proto && (capability == -1 || (caps & capability) == capability)) {
most_online_status = DBGetContactSettingWord(most_online_contact, proto, "Status", ID_STATUS_OFFLINE);
// if our default is not offline, and option to use default is set - return default
@@ -528,7 +528,7 @@ HANDLE Meta_GetMostOnlineSupporting(HANDLE hMeta, int pflagnum, unsigned long ca caps = proto ? CallProtoService(proto, PS_GETCAPS, (WPARAM)pflagnum, 0) : 0;
if(proto && strcmp(proto, "IRC") == 0) caps |= PF1_IM;
- if(proto && (caps & capability) == capability) {
+ if(proto && (capability == -1 || (caps & capability) == capability)) {
status = DBGetContactSettingWord(hContact, proto, "Status", ID_STATUS_OFFLINE);
|