chiark / gitweb /
Various other little bits.
[catacomb-python] / catacomb / pwsafe.py
index 55034916bdfb43c02ecb50d108e583e14861d9fc..823b47fb5c75890d132d72b1d13723d8186045d2 100644 (file)
@@ -114,11 +114,17 @@ class PW (object):
     value = buf.getstring()
     return key, value
   def __getitem__(me, key):
-    return me.unpack(me.db[me.keyxform(key)])[1]
+    try:
+      return me.unpack(me.db[me.keyxform(key)])[1]
+    except KeyError:
+      raise KeyError, key
   def __setitem__(me, key, value):
     me.db[me.keyxform(key)] = me.pack(key, value)
   def __delitem__(me, key):
-    del me.db[me.keyxform(key)]
+    try:
+      del me.db[me.keyxform(key)]
+    except KeyError:
+      raise KeyError, key
   def __iter__(me):
     return PWIter(me)