Stages & jobs

  1. Default Stage

  2. Deploy

Code commits

Smack (4.3)

  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> 85731fbe3eeaa988cd9b163cba4e042500680046

    Merge pull request #275 from spslinger/fix-getPresence-ConcurrentModificationException
    Fix getPresence ConcurrentModificationException

  • spslinger <3893604+spslinger@users.noreply.github.com>

    spslinger <3893604+spslinger@users.noreply.github.com> 1e21ab763cfbfdb1925408fd4b9112a65ff6ded7

    Fix getPresence ConcurrentModificationException
    Fix for SMACK-841

    Since Smack 4.2.4, the getPresencesInternal method in the Roster class
    can return a LruCache object, which is a LinkedHashMap with access
    order. This means that any access using get or getOrDefault will be a
    modification of the Map. If you loop over the keySet of the Map and
    there are more than one, the second call to get will throw a
    ConcurrentModificationException!

    Since the keys are only used here to obtain the corresponding
    values, the simplest solution is to just loop over the values instead.

    • smack-im/src/main/java/org/jivesoftware/smack/roster/Roster.java (version 1e21ab763cfbfdb1925408fd4b9112a65ff6ded7)