prevent QR code parser from crashing fixed #839
This commit is contained in:
parent
bdb335e6b0
commit
2679824770
|
@ -18,9 +18,13 @@ public class XmppUri {
|
|||
try {
|
||||
parse(Uri.parse(uri));
|
||||
} catch (IllegalArgumentException e) {
|
||||
try {
|
||||
jid = Jid.fromString(uri).toBareJid().toString();
|
||||
} catch (InvalidJidException e2) {
|
||||
jid = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public XmppUri(Uri uri) {
|
||||
parse(uri);
|
||||
|
@ -42,6 +46,13 @@ public class XmppUri {
|
|||
try {
|
||||
jid = URLDecoder.decode(uri.getEncodedPath(), "UTF-8").split("/")[1];
|
||||
} catch (final UnsupportedEncodingException ignored) {
|
||||
jid = null;
|
||||
}
|
||||
} else {
|
||||
try {
|
||||
jid = Jid.fromString(uri.toString()).toBareJid().toString();
|
||||
} catch (final InvalidJidException ignored) {
|
||||
jid = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -62,7 +73,7 @@ public class XmppUri {
|
|||
|
||||
public Jid getJid() {
|
||||
try {
|
||||
return Jid.fromString(this.jid);
|
||||
return this.jid == null ? null :Jid.fromString(this.jid);
|
||||
} catch (InvalidJidException e) {
|
||||
return null;
|
||||
}
|
||||
|
@ -71,8 +82,4 @@ public class XmppUri {
|
|||
public String getFingerprint() {
|
||||
return this.fingerprint;
|
||||
}
|
||||
|
||||
public boolean isMuc() {
|
||||
return this.muc;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue