]> granicus.if.org Git - python/commitdiff
Closes #11696: Fix ID generation in msilib.
authorMartin v. Löwis <martin@v.loewis.de>
Sun, 27 Mar 2011 18:58:52 +0000 (20:58 +0200)
committerMartin v. Löwis <martin@v.loewis.de>
Sun, 27 Mar 2011 18:58:52 +0000 (20:58 +0200)
Patch by Mark Mc Mahon.

Lib/msilib/__init__.py
Misc/ACKS
Misc/NEWS

index d7a31c0b6228a91695e8720be9c7f6f76f7e3408..63f392359b8a9b9a34daebfbae70e0c117627082 100644 (file)
@@ -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
index c2bcde286785877237051f23d44c1dd9e6f7fd43..cc33061f3dad4d4de037f7b1fbb6d02da656ddc5 100644 (file)
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -529,6 +529,7 @@ Chris McDonough
 Greg McFarlane
 Alan McIntyre
 Michael McLay
+Mark Mc Mahon
 Gordon McMillan
 Caolan McNamara
 Andrew McNamara
index fcd7b632984363f27dae5d71cce37cfb31cd0f51..03eab5c4ad9c739785d90e7f729b70a5407849dd 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -47,6 +47,8 @@ Core and Builtins
 Library
 -------
 
+- Issue #11696: Fix ID generation in msilib.
+
 - Issue #9696: Fix exception incorrectly raised by xdrlib.Packer.pack_int when
   trying to pack a negative (in-range) integer.