aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/parser/PresenceParser.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2017-05-31 21:30:38 +0200
committerChristian Schneppe <christian@pix-art.de>2017-05-31 21:30:38 +0200
commitf1f5b9fd701499487cbe4e828c45e440ece44e41 (patch)
tree36aed063e752ae7b9eb85160be9338fb706f97e9 /src/main/java/de/pixart/messenger/parser/PresenceParser.java
parent7b5d5165d18042dcb99570e2b3e66afa011e7546 (diff)
parse all delayed tags. use min date
Diffstat (limited to '')
-rw-r--r--src/main/java/de/pixart/messenger/parser/PresenceParser.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/de/pixart/messenger/parser/PresenceParser.java b/src/main/java/de/pixart/messenger/parser/PresenceParser.java
index 8e1b0b006..a4534439e 100644
--- a/src/main/java/de/pixart/messenger/parser/PresenceParser.java
+++ b/src/main/java/de/pixart/messenger/parser/PresenceParser.java
@@ -213,12 +213,14 @@ public class PresenceParser extends AbstractParser implements
final Element idle = packet.findChild("idle", Namespace.IDLE);
if (idle != null) {
- contact.flagInactive();
- final String since = idle.getAttribute("since");
try {
+ final String since = idle.getAttribute("since");
contact.setLastseen(AbstractParser.parseTimestamp(since));
+ contact.flagInactive();
} catch (NullPointerException | ParseException e) {
- contact.setLastseen(System.currentTimeMillis());
+ if (contact.setLastseen(AbstractParser.parseTimestamp(packet))) {
+ contact.flagActive();
+ }
}
} else {
if (contact.setLastseen(AbstractParser.parseTimestamp(packet))) {