diff --git a/Tools/msi/msilib.py b/Tools/msi/msilib.py index 98571ac7563..d2f8764ee33 100644 --- a/Tools/msi/msilib.py +++ b/Tools/msi/msilib.py @@ -333,6 +333,7 @@ def make_id(str): #str = str.replace(".", "_") # colons are allowed str = str.replace(" ", "_") str = str.replace("-", "_") + str = str.replace("+", "_") if str[0] in string.digits: str = "_"+str assert re.match("^[A-Za-z_][A-Za-z0-9_.]*$", str), "FILE"+str @@ -477,6 +478,7 @@ class Directory: [(feature.id, component)]) def make_short(self, file): + file = re.sub(r'[\?|><:/*"+,;=\[\]]', '_', file) # restrictions on short names parts = file.split(".") if len(parts)>1: suffix = parts[-1].upper() @@ -505,7 +507,6 @@ class Directory: if pos in (10, 100, 1000): prefix = prefix[:-1] self.short_names.add(file) - assert not re.search(r'[\?|><:/*"+,;=\[\]]', file) # restrictions on short names return file def add_file(self, file, src=None, version=None, language=None):