]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Issue 3747: Fix caching in ABCMeta.__subclasscheck__ (R: Georg Brandl)
authorNick Coghlan <ncoghlan@gmail.com>
Tue, 2 Sep 2008 10:14:47 +0000 (10:14 +0000)
committerNick Coghlan <ncoghlan@gmail.com>
Tue, 2 Sep 2008 10:14:47 +0000 (10:14 +0000)
Lib/abc.py

index 5e90bf5f1a2c161b0f22c0dac0c2dce2902057eb..618a32cc7549612a0fdf051facd95c96aa32ddfe 100644 (file)
@@ -159,12 +159,12 @@ class ABCMeta(type):
         # Check if it's a subclass of a registered class (recursive)
         for rcls in cls._abc_registry:
             if issubclass(subclass, rcls):
-                cls._abc_registry.add(subclass)
+                cls._abc_cache.add(subclass)
                 return True
         # Check if it's a subclass of a subclass (recursive)
         for scls in cls.__subclasses__():
             if issubclass(subclass, scls):
-                cls._abc_registry.add(subclass)
+                cls._abc_cache.add(subclass)
                 return True
         # No dice; update negative cache
         cls._abc_negative_cache.add(subclass)