From e9739e33156921ec111d60c6a84a1355a195a875 Mon Sep 17 00:00:00 2001
From: Paul Sokolovsky <pfalcon@users.sourceforge.net>
Date: Sat, 18 Jun 2016 01:30:49 +0300
Subject: [PATCH] extmod/modbtree: __getitem__() should raise KeyError for
 non-existing key.

---
 extmod/modbtree.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/extmod/modbtree.c b/extmod/modbtree.c
index eff2cd1f5..345b4d161 100644
--- a/extmod/modbtree.c
+++ b/extmod/modbtree.c
@@ -203,7 +203,7 @@ STATIC mp_obj_t btree_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
         key.data = (void*)mp_obj_str_get_data(index, &key.size);
         int res = __bt_get(self->db, &key, &val, 0);
         if (res == RET_SPECIAL) {
-            return mp_const_none;
+            nlr_raise(mp_obj_new_exception(&mp_type_KeyError));
         }
         CHECK_ERROR(res);
         return mp_obj_new_bytes(val.data, val.size);
-- 
GitLab