bpo-31107: Fix copyreg mangled slot names calculation. (#2989)

This commit is contained in:
Shane Harvey 2017-08-04 01:45:00 -07:00 committed by Serhiy Storchaka
parent 778928b0c7
commit c4c9866064
4 changed files with 18 additions and 1 deletions

View file

@ -128,7 +128,11 @@ def _slotnames(cls):
continue
# mangled names
elif name.startswith('__') and not name.endswith('__'):
names.append('_%s%s' % (c.__name__, name))
stripped = c.__name__.lstrip('_')
if stripped:
names.append('_%s%s' % (stripped, name))
else:
names.append(name)
else:
names.append(name)