diff options
author | Christian Schneppe <christian@pix-art.de> | 2018-02-24 15:57:53 +0100 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2018-02-24 15:57:53 +0100 |
commit | 8f11febe84f4d9ed3ee55dcea7ea4224ac741ef2 (patch) | |
tree | ffd3f94be6fa81e6ce164c37f6a5c748cf1194a4 /src/main/java/de/pixart/messenger/services/XmppConnectionService.java | |
parent | 34718bcbbc2f0406607766e088d89ae2445999e5 (diff) |
only explicitly request device list for users not in roster
Diffstat (limited to '')
-rw-r--r-- | src/main/java/de/pixart/messenger/services/XmppConnectionService.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java index 96c80c93d..ad802711c 100644 --- a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java +++ b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java @@ -2527,7 +2527,11 @@ public class XmppConnectionService extends Service { MucOptions.User user = AbstractParser.parseItem(conversation, child); if (!user.realJidMatchesAccount()) { boolean isNew = conversation.getMucOptions().updateUser(user); - if (isNew && user.getRealJid() != null && axolotlService.hasEmptyDeviceList(user.getRealJid())) { + Contact contact = user.getContact(); + if (isNew + && user.getRealJid() != null + && (contact == null || !contact.mutualPresenceSubscription()) + && axolotlService.hasEmptyDeviceList(user.getRealJid())) { axolotlService.fetchDeviceIds(user.getRealJid()); } } |