diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2011-03-27 18:58:52 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2011-03-27 18:58:52 (GMT) |
commit | 03f7e235c84f46dfa8da3e66b36a32885dbbb6ea (patch) | |
tree | 5ebc8bcc1c8262af38cccd7bd4c8f45c414c756a /Lib/msilib | |
parent | d687be09b4c691850e160f7daccb8ed9d63551b0 (diff) | |
download | cpython-03f7e235c84f46dfa8da3e66b36a32885dbbb6ea.zip cpython-03f7e235c84f46dfa8da3e66b36a32885dbbb6ea.tar.gz cpython-03f7e235c84f46dfa8da3e66b36a32885dbbb6ea.tar.bz2 |
Closes #11696: Fix ID generation in msilib.
Patch by Mark Mc Mahon.
Diffstat (limited to 'Lib/msilib')
-rw-r--r-- | Lib/msilib/__init__.py | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/Lib/msilib/__init__.py b/Lib/msilib/__init__.py index d7a31c0..63f3923 100644 --- a/Lib/msilib/__init__.py +++ b/Lib/msilib/__init__.py @@ -173,9 +173,8 @@ def add_tables(db, module): add_data(db, table, getattr(module, table)) def make_id(str): - #str = str.replace(".", "_") # colons are allowed - for c in " -+~;": - str = str.replace(c, "_") + identifier_chars = string.ascii_letters + string.digits + "._" + str = "".join([c if c in identifier_chars else "_" for c in str]) if str[0] in (string.digits + "."): str = "_" + str assert re.match("^[A-Za-z_][A-Za-z0-9_.]*$", str), "FILE"+str |