diff -r fbe29ca8192b Objects/dictobject.c --- a/Objects/dictobject.c Tue Sep 13 13:27:41 2016 +0200 +++ b/Objects/dictobject.c Tue Sep 13 21:41:47 2016 +0800 @@ -1721,7 +1721,7 @@ ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value_addr, &hashpos); if (ix == DKIX_ERROR) return NULL; - if (ix == DKIX_EMPTY) { + if (ix == DKIX_EMPTY || *value_addr == NULL) { if (deflt) { Py_INCREF(deflt); return deflt;