Change summary
src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java | 10 +++-
1 file changed, 7 insertions(+), 3 deletions(-)
Detailed changes
@@ -1086,7 +1086,12 @@ public class XmppConnection implements Runnable {
}
}
for(OnIqPacketReceived callback : callbacks) {
- callback.onIqPacketReceived(account,failurePacket);
+ try {
+ callback.onIqPacketReceived(account, failurePacket);
+ } catch (StateChangingError error) {
+ Log.d(Config.LOGTAG,account.getJid().toBareJid()+": caught StateChangingError("+error.state.toString()+") while clearing callbacks");
+ //ignore
+ }
}
Log.d(Config.LOGTAG, account.getJid().toBareJid() + ": done clearing iq callbacks. " + this.packetCallbacks.size() + " left");
}
@@ -1322,8 +1327,7 @@ public class XmppConnection implements Runnable {
public synchronized String sendUnmodifiedIqPacket(final IqPacket packet, final OnIqPacketReceived callback) {
if (packet.getId() == null) {
- final String id = nextRandomId();
- packet.setAttribute("id", id);
+ packet.setAttribute("id", nextRandomId());
}
if (callback != null) {
synchronized (this.packetCallbacks) {