summaryrefslogtreecommitdiff
path: root/py/objdict.c
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2014-04-05 17:17:19 +0100
committerDamien George <damien.p.george@gmail.com>2014-04-05 17:17:19 +0100
commit95004e5114bd40cea256c3228ffac682d231855d (patch)
tree520edc9372b1e26e1e21c8e8c4a66f8ad93773da /py/objdict.c
parente20b6b418ce5272c1945e4dabc02de0336b99697 (diff)
py: Fix delete operation on map/dict and set objects.
Hash table can now be completely full (ie now NULL entry) before a resize is triggered. Use sentinel value to indicate delete entry in the table.
Diffstat (limited to 'py/objdict.c')
-rw-r--r--py/objdict.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/py/objdict.c b/py/objdict.c
index 7c9d8d74d..f6070a0b4 100644
--- a/py/objdict.c
+++ b/py/objdict.c
@@ -103,7 +103,7 @@ STATIC mp_map_elem_t *dict_it_iternext_elem(mp_obj_t self_in) {
mp_map_elem_t *table = self->dict->map.table;
for (int i = self->cur; i < max; i++) {
- if (table[i].key != NULL) {
+ if (table[i].key != MP_OBJ_NULL && table[i].key != MP_OBJ_SENTINEL) {
self->cur = i + 1;
return &(table[i]);
}