aboutsummaryrefslogtreecommitdiff
path: root/src/mod_caps.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/mod_caps.erl')
-rw-r--r--src/mod_caps.erl4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mod_caps.erl b/src/mod_caps.erl
index edc93bbf1..6021da252 100644
--- a/src/mod_caps.erl
+++ b/src/mod_caps.erl
@@ -206,8 +206,10 @@ c2s_presence_in(C2SState,
{Subscription, _} = ejabberd_hooks:run_fold(
roster_get_jid_info, To#jid.lserver,
{none, []}, [To#jid.luser, To#jid.lserver, From]),
+ ToSelf = (From#jid.luser == To#jid.luser)
+ and (From#jid.lserver == To#jid.lserver),
Insert = (Type == available)
- and ((Subscription == both) or (Subscription == to)),
+ and ((Subscription == both) or (Subscription == to) or ToSelf),
Delete = (Type == unavailable) or (Type == error),
if Insert or Delete ->
LFrom = jid:tolower(From),