summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2008-05-25 09:32:09 (GMT)
committerGeorg Brandl <georg@python.org>2008-05-25 09:32:09 (GMT)
commit1bcf35ae39a7db66666b001252886d82c755110b (patch)
treebeee3584c97218d06eabf00fdf994842c0a131be
parentc9b0953bda1339137a7280ab1b1085abbdf4977a (diff)
downloadcpython-1bcf35ae39a7db66666b001252886d82c755110b.zip
cpython-1bcf35ae39a7db66666b001252886d82c755110b.tar.gz
cpython-1bcf35ae39a7db66666b001252886d82c755110b.tar.bz2
#2963: fix method cache types.
-rw-r--r--Misc/NEWS2
-rw-r--r--Objects/typeobject.c6
2 files changed, 5 insertions, 3 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 08bd092..a8da635 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,8 @@ What's new in Python 3.0b1?
Core and Builtins
-----------------
+- Issue #2963: fix merging oversight that disabled method cache for all types.
+
- Issue #2964: fix a missing INCREF in instancemethod_descr_get.
- Issue 2895: Don't crash when given bytes objects as keyword names.
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index 8880cab..88ce67f 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -20,10 +20,10 @@
>> (8*sizeof(unsigned int) - MCACHE_SIZE_EXP))
#define MCACHE_HASH_METHOD(type, name) \
MCACHE_HASH((type)->tp_version_tag, \
- ((PyStringObject *)(name))->ob_shash)
+ ((PyUnicodeObject *)(name))->hash)
#define MCACHE_CACHEABLE_NAME(name) \
- PyString_CheckExact(name) && \
- PyString_GET_SIZE(name) <= MCACHE_MAX_ATTR_SIZE
+ PyUnicode_CheckExact(name) && \
+ PyUnicode_GET_SIZE(name) <= MCACHE_MAX_ATTR_SIZE
struct method_cache_entry {
unsigned int version;