summaryrefslogtreecommitdiff
path: root/Lib/copyreg.py
diff options
context:
space:
mode:
authorShane Harvey <shane.harvey@mongodb.com>2017-08-04 01:45:00 -0700
committerSerhiy Storchaka <storchaka@gmail.com>2017-08-04 11:45:00 +0300
commitc4c9866064f03646c686d7e08b00aeb203c35c19 (patch)
tree9af64a872544117d7a3f41469b3018555c18e213 /Lib/copyreg.py
parent778928b0c7aa438c282727535814d73df850693a (diff)
downloadcpython-git-c4c9866064f03646c686d7e08b00aeb203c35c19.tar.gz
bpo-31107: Fix copyreg mangled slot names calculation. (#2989)
Diffstat (limited to 'Lib/copyreg.py')
-rw-r--r--Lib/copyreg.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/Lib/copyreg.py b/Lib/copyreg.py
index ed29d719de..bbe1af4e2e 100644
--- a/Lib/copyreg.py
+++ b/Lib/copyreg.py
@@ -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)