Build: #161 was successful Changes by Florian Schmaus <flo@geekplace.eu>
Code commits
Smack (4.3)
-
Florian Schmaus <flo@geekplace.eu> 9be498c440e2b10cae4d01b4d0037bfdb90c85cf
Fix NPE in Roster's presence listeners if 'from' is not set
The NPE is caused by an inbound presence stanza without the 'from'
attribute set. The stacktrace of the NPE is:
FATAL EXCEPTION: Smack Cached Executor
Process: de.fhg.ivi.senetz.mobile.android.mbk.debug, PID: 13365
java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.Object.hashCode()' on a null object reference
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:944)
at org.jivesoftware.smack.roster.Roster.getPresencesInternal(Roster.java:374)
at org.jivesoftware.smack.roster.Roster.getOrCreatePresencesInternal(Roster.java:388)
at org.jivesoftware.smack.roster.Roster.access$1100(Roster.java:94)
at org.jivesoftware.smack.roster.Roster$PresencePacketListener$1.run(Roster.java:1519)
at org.jivesoftware.smack.AsyncButOrdered$Handler.run(AsyncButOrdered.java:121)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Thanks to Marcel Heckel for reporting this.
Fixes SMACK-861.- smack-im/src/main/java/org/jivesoftware/smack/roster/Roster.java (version 9be498c440e2b10cae4d01b4d0037bfdb90c85cf)
-
Florian Schmaus <flo@geekplace.eu> 25b3f354216683e568a54b93be1c6a931cd79b26
Ensure that shutdown() terminates reader/writer threads
In case an exception happens in connect()/login() the
'disconnectedButResumable' boolean may (still) be set. Which causes
only one of the reader and writer threads to exit, typically the
reader thread, because shutdown() will bail out very early. This
leaves a dangling (writer) thread causing memory leaks and deadlocks
on a subsequent connect()/login().- smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java (version 25b3f354216683e568a54b93be1c6a931cd79b26)
-
Florian Schmaus <flo@geekplace.eu> 5d46e281fcbd60f34bd96ccbe36faa8072d39354
XMPPTCPConnection log when reader/writer threads start and exit
- smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java (version 5d46e281fcbd60f34bd96ccbe36faa8072d39354)