powered by Jive Software

Smack 4.4.0 BoBIQ#getIQChildElementBuilder throws NPE when the BoB data does not contain the recommended 'max-age'

BoBIQ#getIQChildElementBuilder throws NPE when the BoB data does not contain the recommended ‘max-age’. See below aTalk debug log.

2.5 Format of the Element

============== aTalk debug log ==============
2021-01-01 13:36:21.347 29697-4026/org.atalk.android D/SMACK: RECV (0): 
    <iq xml:lang='en-GB' to='swordfish@atalk.org/atalk' from='peacock@atalk.org/atalk' type='get' id='7VL4I-93'>
      <data xmlns='urn:xmpp:bob' cid='sha1+1591ce7c9d8648159ea7ff24b3f5c7e4236325c1@bob.xmpp.org'/>
    </iq>
2021-01-01 13:36:21.349 29697-4026/org.atalk.android D/SMACK: RECV (0): 
    <r xmlns='urn:xmpp:sm:3'/>
2021-01-01 13:36:21.354 29697-6219/org.atalk.android W/aTalk: [249180] org.jivesoftware.smack.AbstractXMPPConnection.callConnectionClosedOnErrorListener() Connection XMPPTCPConnection[swordfish@atalk.org/atalk] (0) closed with error
    java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.Integer.intValue()' on a null object reference
        at org.jivesoftware.smackx.bob.element.BoBIQ.getIQChildElementBuilder(BoBIQ.java:103)
        at org.jivesoftware.smack.packet.IQ.appendInnerXml(IQ.java:204)
        at org.jivesoftware.smack.packet.IQ.toXML(IQ.java:169)
        at org.jivesoftware.smack.packet.IQ.toXML(IQ.java:45)
        at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketWriter.writePackets(XMPPTCPConnection.java:1339)
        at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketWriter.access$4200(XMPPTCPConnection.java:1158)
        at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketWriter$1.run(XMPPTCPConnection.java:1208)
        at java.lang.Thread.run(Thread.java:919)

Thanks for reporting. I have created SMACK-895.