diff options
author | Aurelien Aptel <aaptel@suse.com> | 2015-07-16 16:55:28 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2015-07-21 19:04:15 +0200 |
commit | b86df6e47c85fd50125cc99bce6dba0e27650840 (patch) | |
tree | fe15bc909cbf153064ff205ac303f08e14126b9f | |
parent | 075799ac173dec49e1a669528eb85265962652d2 (diff) | |
download | samba-b86df6e47c85fd50125cc99bce6dba0e27650840.tar.gz |
tdb python binding: raise KeyError(key) when the key doesn't exist
This change makes tdb dicts more consistent with Python dicts.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=7416
Signed-off-by: Aurelien Aptel <aaptel@suse.com>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
-rw-r--r-- | lib/tdb/pytdb.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/tdb/pytdb.c b/lib/tdb/pytdb.c index b0f9cd961d7..c9d3a7660e3 100644 --- a/lib/tdb/pytdb.c +++ b/lib/tdb/pytdb.c @@ -650,7 +650,11 @@ static PyObject *obj_getitem(PyTdbObject *self, PyObject *key) val = tdb_fetch(self->ctx, tkey); if (val.dptr == NULL) { - PyErr_SetString(PyExc_KeyError, "No such TDB entry"); + /* + * if the key doesn't exist raise KeyError(key) to be + * consistent with python dict + */ + PyErr_SetObject(PyExc_KeyError, key); return NULL; } else { return PyBytes_FromTDB_DATA(val); |