diff -Nru software-properties-0.99.9.8+ubuntupro13/debian/changelog software-properties-0.99.9.8+ubuntupro13.1/debian/changelog --- software-properties-0.99.9.8+ubuntupro13/debian/changelog 2022-12-16 10:20:29.000000000 +0000 +++ software-properties-0.99.9.8+ubuntupro13.1/debian/changelog 2022-12-16 10:20:29.000000000 +0000 @@ -1,4 +1,4 @@ -software-properties (0.99.9.8+ubuntupro13) focal; urgency=medium +software-properties (0.99.9.8+ubuntupro13.1) focal; urgency=medium * Include the magic attach workflow, thanks Nathan! diff -Nru software-properties-0.99.9.8+ubuntupro13/softwareproperties/gtk/DialogUaAttach.py software-properties-0.99.9.8+ubuntupro13.1/softwareproperties/gtk/DialogUaAttach.py --- software-properties-0.99.9.8+ubuntupro13/softwareproperties/gtk/DialogUaAttach.py 2022-12-16 10:20:29.000000000 +0000 +++ software-properties-0.99.9.8+ubuntupro13.1/softwareproperties/gtk/DialogUaAttach.py 2022-12-16 10:20:29.000000000 +0000 @@ -25,6 +25,7 @@ from uaclient.api.u.pro.attach.magic.initiate.v1 import initiate from uaclient.api.u.pro.attach.magic.wait.v1 import MagicAttachWaitOptions, wait from uaclient.exceptions import MagicAttachTokenError +import threading class DialogUaAttach: def __init__(self, parent, datadir, ua_object): @@ -135,8 +136,6 @@ self.attach() def on_cancel_clicked(self, button): - if self.poll: - GLib.Thread.unref(self.poll) self.dialog.response(Gtk.ResponseType.CANCEL) def poll_for_magic_token(self): @@ -168,7 +167,7 @@ print(e) return self.update_state() - self.poll = GLib.Thread.new("poll", self.poll_for_magic_token) + threading.Thread(target=self.poll_for_magic_token, daemon=True).start() def on_radio_toggled(self, button): self.update_state() diff -Nru software-properties-0.99.9.8+ubuntupro13/softwareproperties/SoftwareProperties.py software-properties-0.99.9.8+ubuntupro13.1/softwareproperties/SoftwareProperties.py --- software-properties-0.99.9.8+ubuntupro13/softwareproperties/SoftwareProperties.py 2022-12-16 10:20:29.000000000 +0000 +++ software-properties-0.99.9.8+ubuntupro13.1/softwareproperties/SoftwareProperties.py 2022-12-16 10:20:29.000000000 +0000 @@ -138,7 +138,8 @@ " wait for all running threads (PPA key fetchers) to exit " for t in threading.enumerate(): if t.ident != threading.current_thread().ident: - t.join() + if not t.daemon: + t.join() def backup_apt_conf(self): """Backup all apt configuration options"""