tools/ldgen: Parse paths with Unicode characters in archives
Closes
@@ -21,7 +21,7 @@ import fnmatch
from fragments import Sections, Scheme, Mapping, Fragment
from pyparsing import Suppress, White, ParseException, Literal, Group, ZeroOrMore
-from pyparsing import Word, OneOrMore, nums, alphanums, alphas, Optional, LineEnd, printables
+from pyparsing import Word, OneOrMore, nums, alphanums, alphas, Optional, restOfLine
from ldgen_common import LdGenFailure
@@ -580,9 +580,9 @@ class SectionsInfo(dict):
first_line = sections_info_dump.readline()
archive_path = (Literal("In archive").suppress() +
- # trim the last character from archive_path, :
- Word(printables + " ").setResultsName("archive_path").setParseAction(lambda t: t[0][:-1]) +
- LineEnd())
+ White().suppress() +
+ # trim the last character (:) from archive_path
+ restOfLine.setResultsName("archive_path").setParseAction(lambda t: t[0][:-1]))
parser = archive_path
results = None
