From: Benjamin Peterson Date: Wed, 7 Sep 2016 02:04:37 +0000 (-0700) Subject: merge 3.5 X-Git-Tag: v3.6.0b1~372 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=35b40c65f6a4d902d7dbff21a02e4d211b0952b1;p=thirdparty%2FPython%2Fcpython.git merge 3.5 --- 35b40c65f6a4d902d7dbff21a02e4d211b0952b1 diff --cc Modules/hashtable.c index b53cc2408326,fdddc19cff1b..3462fef19e8e --- a/Modules/hashtable.c +++ b/Modules/hashtable.c @@@ -336,9 -323,12 +336,10 @@@ _Py_hashtable_set(_Py_hashtable_t *ht, return -1; } - entry->key = (void *)key; entry->key_hash = key_hash; - - assert(data_size == ht->data_size); + Py_MEMCPY((void *)_Py_HASHTABLE_ENTRY_PKEY(entry), pkey, ht->key_size); - ENTRY_WRITE_PDATA(ht, entry, data_size, data); + if (data) - memcpy(_Py_HASHTABLE_ENTRY_DATA(entry), data, data_size); ++ ENTRY_WRITE_PDATA(ht, entry, data_size, data); _Py_slist_prepend(&ht->buckets[index], (_Py_slist_item_t*)entry); ht->entries++;