| 5031 | self.assertEqual(descr.counter, 4) |
| 5032 | |
| 5033 | class EvilGetattribute(object): |
| 5034 | # This used to segfault |
| 5035 | def __getattr__(self, name): |
| 5036 | raise AttributeError(name) |
| 5037 | def __getattribute__(self, name): |
| 5038 | del EvilGetattribute.__getattr__ |
| 5039 | for i in range(5): |
| 5040 | gc.collect() |
| 5041 | raise AttributeError(name) |
| 5042 | |
| 5043 | self.assertRaises(AttributeError, getattr, EvilGetattribute(), "attr") |
| 5044 |
no outgoing calls
searching dependent graphs…