Subject: Fix forgetting password from keyring From: WGH wgh@torlan.ru Sun Mar 21 20:44:02 2021 +0300 Date: Tue Apr 6 18:30:08 2021 -0400: Git: d9b5090e061e9fad9738359a8b1f86f16eac45cf First, Item.Delete never accepted any arguments, so this code likely never worked. Second, Item.Delete might return a Prompt object, which client is supposed to call if keyring wants to confirm deletion. diff --git a/virtManager/lib/keyring.py b/virtManager/lib/keyring.py index 203886dc..c0f50142 100644 --- a/virtManager/lib/keyring.py +++ b/virtManager/lib/keyring.py @@ -87,7 +87,12 @@ class vmmKeyring(vmmGObject): iface = Gio.DBusProxy.new_sync(self._dbus, 0, None, "org.freedesktop.secrets", path, "org.freedesktop.Secret.Item", None) - iface.Delete("(s)", "/") + prompt = iface.Delete() + if prompt != "/": + iface = Gio.DBusProxy.new_sync(self._dbus, 0, None, + "org.freedesktop.secrets", prompt, + "org.freedesktop.Secret.Prompt", None) + iface.Prompt("(s)", "") except Exception: log.exception("Failed to delete keyring secret")