mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-24 00:01:07 -09:00
Since Python 3.13 BaseSelectorEventLoop.add_reader() and BaseSelectorEventLoop.add_writer() use the mapping returned by selector.get_map() to detect if a file object is already registered. This fails with the implementation in gi.events._Selector if some calls use a file object, and others the raw file descriptor. Full upstream bug report: https://gitlab.gnome.org/GNOME/pygobject/-/issues/689 This bug breaks package/python-aiomqtt, because its client object uses file objects in some places for the connection socket, and the file descriptor in others. The result is that the connection attempt times out because source registration fails, and the Future that marks successful connection never resolves. This commit adds the fix as backported to PyGObject 3.50 [1] so it can be cherry-picked to Buildroot stable versions using that version. [1] https://gitlab.gnome.org/GNOME/pygobject/-/merge_requests/423 Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>