]> granicus.if.org Git - python/commitdiff
merge 3.5
authorBenjamin Peterson <benjamin@python.org>
Wed, 7 Sep 2016 02:04:37 +0000 (19:04 -0700)
committerBenjamin Peterson <benjamin@python.org>
Wed, 7 Sep 2016 02:04:37 +0000 (19:04 -0700)
1  2 
Modules/hashtable.c

index b53cc2408326ae371cd3d3b9a7dc03f5ba9ae27b,fdddc19cff1bf9cea7f5e36c1e7991c345622b33..3462fef19e8e6f5f5070146b1e6d12729f0bbe5f
@@@ -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++;