xi-keyring

simple and extensible alternative for gnome-keyring
git clone https://git.ce9e.org/xi-keyring.git

commit
62d64bbe41c2f2f535429aef802007ab02ef2381
parent
7fa1f2d87ff9e28da4dd611df8b61e040e3fdc5f
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2024-06-01 08:59
fix: do not unregister items from different namespaces

Diffstat

M xikeyring/dbus.py 11 +++--------

1 files changed, 3 insertions, 8 deletions


diff --git a/xikeyring/dbus.py b/xikeyring/dbus.py

@@ -133,11 +133,9 @@ class DBusService(BaseDBusService):
  133   133     def ids_to_paths(self, items):
  134   134         return [f'{OFSP}/collection/it/{id}' for id in items]
  135   135 
  136    -1     def update_items(self, conn, *, keep=None, add=[], rm=[], emit=True):
   -1   136     def update_items(self, conn, *, add=[], rm=[], emit=True):
  137   137         real_rm = [
  138    -1             id
  139    -1             for id, reg_id in list(self.registered_items.items())
  140    -1             if id in rm or (keep is not None and id not in keep)
   -1   138             id for id, reg_id in list(self.registered_items.items()) if id in rm
  141   139         ]
  142   140         real_add = [id for id in add if id not in self.registered_items]
  143   141 
@@ -182,10 +180,7 @@ class DBusService(BaseDBusService):
  182   180 
  183   181     def search_items(self, exe, conn, query={}, *, emit=True):
  184   182         items = self.keyring.search_items(exe, query)
  185    -1         if query:
  186    -1             self.update_items(conn, add=items, emit=emit)
  187    -1         else:
  188    -1             self.update_items(conn, add=items, keep=items, emit=emit)
   -1   183         self.update_items(conn, add=items, emit=emit)
  189   184         return items
  190   185 
  191   186     def on_bus_acquired(self, conn, bus):