Empty UI caused by new avatar generator
After git pull this morning my gajim becomes blank after a few milliseconds. Here is the stacktrace I have when launched from the terminal:
AttributeError: 'tuple' object has no attribute 'width'
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/gi/overrides/GLib.py", line 728, in <lambda>
func_fdtransform = lambda _, cond, *data: callback(channel, cond, *data)
File "/home/pitchum/code/pub/gajim-family/python-nbxmpp/nbxmpp/idlequeue.py", line 555, in _process_events
return IdleQueue._process_events(self, fd, flags)
File "/home/pitchum/code/pub/gajim-family/python-nbxmpp/nbxmpp/idlequeue.py", line 406, in _process_events
obj.pollin()
File "/home/pitchum/code/pub/gajim-family/python-nbxmpp/nbxmpp/transports.py", line 443, in pollin
self._do_receive()
File "/home/pitchum/code/pub/gajim-family/python-nbxmpp/nbxmpp/transports.py", line 664, in _do_receive
self._on_receive(received)
File "/home/pitchum/code/pub/gajim-family/python-nbxmpp/nbxmpp/transports.py", line 678, in _on_receive
self.on_receive(data)
File "/home/pitchum/code/pub/gajim-family/python-nbxmpp/nbxmpp/dispatcher.py", line 667, in _WaitForData
resp(self._owner, _iq, **args)
File "/home/pitchum/code/pub/gajim-family/python-nbxmpp/nbxmpp/util.py", line 181, in func_wrapper
cb()(result)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/common/modules/bookmarks.py", line 168, in _bookmarks_received
self.auto_join_bookmarks()
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/common/modules/bookmarks.py", line 207, in auto_join_bookmarks
bookmark.password, minimize=minimize)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/gui_interface.py", line 1648, in join_gc_room
self.roster.add_groupchat(room_jid, account)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/roster_window.py", line 830, in add_groupchat
self.add_contact(jid, account)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/roster_window.py", line 714, in add_contact
self._add_entity(contact, account)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/roster_window.py", line 432, in _add_entity
image = self._get_avatar_image(account, contact.jid)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/roster_window.py", line 1373, in _get_avatar_image
account, jid, AvatarSize.ROSTER, scale)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/common/contacts.py", line 378, in get_avatar
return self._accounts[account].contacts.get_avatar(*args, **kwargs)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/common/contacts.py", line 603, in get_avatar
resource, size, scale)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/gui_interface.py", line 2070, in get_avatar
surface = generate_avatar(letter, color, size, scale)
File "/home/pitchum/code/pub/gajim-family/gajim/gajim/gtk/util.py", line 650, in generate_avatar
x_pos = width / 2 - (extends.width / 2 + extends.x_bearing)
AttributeError: 'tuple' object has no attribute 'width'
After manually reverting commit de982e96 everything is back to normal. It looks like a compatibility issue with Cairo. I have these Debian packages installed:
ii python3-cairo 1.10.0+dfsg-5+b1 amd64 Python 3 bindings for the Cairo vector graphics library
ii python3-cairocffi 0.7.2-2 all cffi-based cairo bindings for Python (Python3)
ii python3-cairosvg 1.0.20-1 all SVG to PDF/PS/PNG converter based on Cairo (Python3 library)
ii python3-gi-cairo 3.22.0-2 amd64 Python 3 Cairo bindings for the GObject library
Tell me if you need more info.