Gajim throws an error when conversation partner offers to send a large file
Hello devs and contributors,
Gajim threw the following error when I tried to send myself a large (11MB) file attachment from Conversations on Android. Sending a version of the same file compressed by Conversations to around 700KB succeeded. I attempted the same two sends with another conversation partner (Chatsecure on iOS); they were able to receive the small file but not the large one (no download link or message appeared at all). Perhaps then the prosody server is not accepting the file but is nonetheless communicating something about the offer to Gajim, whereupon Gajim is throwing the error.
It's not a major issue for me personally, but I thought you might like to know.
Versions
- OS: Debian GNU/Linux 10 (buster)
- GTK+ Version: 3.24.5
- PyGObject Version: 3.30.4
- python-nbxmpp Version: 0.6.10
- Gajim Version: 1.1.2
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 525, in __on_session_initiate
contents, _contents_rejected, reason_txt = self.__parse_contents(jingle)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_session.py", line 635, in __parse_contents
content = content_type(self, transport=transport)
File "/usr/lib/python3/dist-packages/gajim/common/jingle_ft.py", line 103, in __init__
session.peerjid):
File "/usr/lib/python3/dist-packages/gajim/common/contacts.py", line 471, in is_gc_contact
return self._accounts[account].gc_contacts.is_gc_contact(jid)
File "/usr/lib/python3/dist-packages/gajim/common/contacts.py", line 700, in is_gc_contact
jid = jid.split('/')
AttributeError: 'NoneType' object has no attribute 'split'
Steps to reproduce the problem
- In Conversations/Android, open settings and set Attachments/Image compression to 'Large images only'
- In a message addressed to myself, use 'Choose picture' to attach an 11MB JPEG file (in Conversations, 'Choose picture' is subject to the compression setting), hit send;
- in Gajim, click on link in message and download the (compressed) JPEG;
- From Conversations/Android, in a message addressed to myself, use 'Choose file' to attach an 11MB JPEG file (in Conversations, 'Choose picture' is not subject to the compression setting), hit send;
- Gajim immediately displays the above error message and fails to show a download link.