Jingle S5B proxy candidates sent with transport-info are handled wrong
Versions
- OS: Linux
- GTK+ Version: 3.22.30
- PyGObject Version: 3.26.1
- python-nbxmpp Version: 0.6.10
- Gajim Version: 1.1.3+b63dd2ed
Traceback
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/nbxmpp/dispatcher_nb.py", line 502, in dispatch
handler['func'](session, stanza)
File "/usr/lib/python3/dist-packages/gajim/common/jingle.py", line 111, in _JingleCB
self._sessions[sid].on_stanza(stanza)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_session.py", line 354, in on_stanza
call(stanza=stanza, jingle=jingle, error=error, action=action)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_session.py", line 598, in __broadcast
cn.on_stanza(stanza, content, error, action)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_content.py", line 128, in on_stanza
callback(stanza, content, error, action)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_ft.py", line 308, in __on_transport_info
self.__state_changed(State.CAND_SENT_AND_RECEIVED, args)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_ft.py", line 130, in __state_changed
st.action(args)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_ftstates.py", line 126, in action
self._recv_candidate(args)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_ftstates.py", line 98, in _recv_candidate
streamhost_cid = content.getTag('transport').getTag('candidate-used').\
AttributeError: 'NoneType' object has no attribute 'getAttr'
Steps to reproduce the problem
- Send a file via Jingle to the recent nightly Psi which is connected to a jabber host with available proxy streamer
- Accept the file on Psi side. It will send session-accept with just host candidate
- When finished discovering proxy streamer it will send it via transport-info request
- Gajim will send candidate-error immediatelly
Expected behavior
No backtraces