From f6df6c36040882ec01eb6a21ad24d15b8232875d Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Wed, 2 May 2018 21:07:14 +0200 Subject: check if jid was valid before parsing muc status or event msgs --- src/main/java/de/pixart/messenger/xmpp/InvalidJid.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'src/main/java/de/pixart/messenger/xmpp/InvalidJid.java') diff --git a/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java b/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java index a22bd6cef..ce381abdc 100644 --- a/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java +++ b/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java @@ -31,6 +31,7 @@ package de.pixart.messenger.xmpp; import android.support.annotation.NonNull; +import de.pixart.messenger.xmpp.stanzas.AbstractStanza; import rocks.xmpp.addr.Jid; public class InvalidJid implements Jid { @@ -141,10 +142,19 @@ public class InvalidJid implements Jid { } public static boolean isValid(Jid jid) { - if (jid != null && jid instanceof InvalidJid) { + return !(jid != null && jid instanceof InvalidJid); + } + + public static boolean hasValidFrom(AbstractStanza stanza) { + final String from = stanza.getAttribute("from"); + if (from == null) { return false; - } else { + } + try { + Jid.ofEscaped(from); return true; + } catch (IllegalArgumentException e) { + return false; } } } \ No newline at end of file -- cgit v1.2.3