Geoffrey Gerrietts discovered that a KeyError was caught that probably
should have been a NameError. I'm checking in a change that catches
both, just to be sure -- I can't be bothered trying to understand this
code any more. :-)
diff --git a/Demo/metaclasses/Meta.py b/Demo/metaclasses/Meta.py
index 771205c..39cbef6 100644
--- a/Demo/metaclasses/Meta.py
+++ b/Demo/metaclasses/Meta.py
@@ -30,7 +30,7 @@
except AttributeError:
try:
ga = self.__formalclass__.__getattr__('__usergetattr__')
- except KeyError:
+ except (KeyError, AttributeError):
raise AttributeError, name
return ga(self, name)
if type(raw) != types.FunctionType: