diff options
author | Stefan H. Holek <stefan@epy.co.at> | 2012-10-08 20:58:18 +0200 |
---|---|---|
committer | Stefan H. Holek <stefan@epy.co.at> | 2012-10-08 20:58:18 +0200 |
commit | 9553dd9910df577351ea04bb1613767096beeca0 (patch) | |
tree | 11db42b2acbf0beef74b4886299d219f34c17635 /setuptools/command/bdist_egg.py | |
parent | 9eca33ff8e3664ac2f2127aadeb358d213745123 (diff) | |
download | external_python_setuptools-9553dd9910df577351ea04bb1613767096beeca0.tar.gz external_python_setuptools-9553dd9910df577351ea04bb1613767096beeca0.tar.bz2 external_python_setuptools-9553dd9910df577351ea04bb1613767096beeca0.zip |
marshall.load() does not necessarily raise ValueError. Fixes #283.
--HG--
branch : distribute
extra : rebase_source : 203cee618118fb65bf109d2db0275aa90aa5a12d
Diffstat (limited to 'setuptools/command/bdist_egg.py')
-rw-r--r-- | setuptools/command/bdist_egg.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/setuptools/command/bdist_egg.py b/setuptools/command/bdist_egg.py index 0ee9c55b..17fae984 100644 --- a/setuptools/command/bdist_egg.py +++ b/setuptools/command/bdist_egg.py @@ -425,12 +425,12 @@ def scan_module(egg_dir, base, name, stubs): return True # Extension module pkg = base[len(egg_dir)+1:].replace(os.sep,'.') module = pkg+(pkg and '.' or '')+os.path.splitext(name)[0] - f = open(filename,'rb'); f.read(8) # skip magic & date - try: - code = marshal.load(f); f.close() - except ValueError: - f.seek(0); f.read(12) # skip magic & date & file size; file size added in Python 3.3 - code = marshal.load(f); f.close() + if sys.version_info < (3, 3): + skip = 8 # skip magic & date + else: + skip = 12 # skip magic & date & file size + f = open(filename,'rb'); f.read(skip) + code = marshal.load(f); f.close() safe = True symbols = dict.fromkeys(iter_symbols(code)) for bad in ['__file__', '__path__']: |