summaryrefslogtreecommitdiff
path: root/builder.py
diff options
context:
space:
mode:
authorSylvain Th?nault <sylvain.thenault@logilab.fr>2010-09-21 16:08:32 +0200
committerSylvain Th?nault <sylvain.thenault@logilab.fr>2010-09-21 16:08:32 +0200
commita5b97eecd02241c4377340d7ae9cc0c5a7d74c9b (patch)
tree500c3215e5e16e90749e233bbb07fe7f43e6334c /builder.py
parentdb42b0d23e7982acb1fd3bf0bffd9f5e82b234f9 (diff)
downloadastroid-a5b97eecd02241c4377340d7ae9cc0c5a7d74c9b.tar.gz
fix #45959: AttributeError: 'NoneType' object has no attribute 'frame'
due to handling of __class__ when importing from living object (because of missing source code or C-compiled object)
Diffstat (limited to 'builder.py')
-rw-r--r--builder.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/builder.py b/builder.py
index 9acda4a..f4563ec 100644
--- a/builder.py
+++ b/builder.py
@@ -190,6 +190,8 @@ class ASTNGBuilder:
class_node = object_build_class(node, member, name)
# recursion
self.object_build(class_node, member)
+ if name == '__class__' and class_node.parent is None:
+ class_node.parent = self._done[self._module]
elif ismethoddescriptor(member):
assert isinstance(member, object)
object_build_methoddescriptor(node, member, name)