Merge "Clarify error message for bootclasspath whitelist." am: 0d6a25c73f

am: 17f31a1146

Change-Id: Ic08b0bce25bc9ea802e7f4b3a7fecf02fe874f79
This commit is contained in:
Tobias Thierer 2018-03-06 19:27:50 +00:00 committed by android-build-merger
commit fcf943b14d
1 changed files with 7 additions and 5 deletions

View File

@ -39,7 +39,7 @@ def LoadWhitelist(filename):
return True return True
def CheckJar(jar): def CheckJar(whitelist_path, jar):
"""Check a jar file. """Check a jar file.
""" """
# Get the list of files inside the jar file. # Get the list of files inside the jar file.
@ -55,8 +55,9 @@ def CheckJar(jar):
package_name = package_name.replace('/', '.') package_name = package_name.replace('/', '.')
# Skip class without a package name # Skip class without a package name
if package_name and not whitelist_re.match(package_name): if package_name and not whitelist_re.match(package_name):
print >> sys.stderr, ('Error: %s contains class file %s, which is not in the whitelist' print >> sys.stderr, ('Error: %s contains class file %s, whose package name %s is not '
% (jar, f)) 'in the whitelist %s of packages allowed on the bootclasspath.'
% (jar, f, package_name, whitelist_path))
return False return False
return True return True
@ -65,13 +66,14 @@ def main(argv):
if len(argv) < 2: if len(argv) < 2:
print __doc__ print __doc__
return 1 return 1
whitelist_path = argv[0]
if not LoadWhitelist(argv[0]): if not LoadWhitelist(whitelist_path):
return 1 return 1
passed = True passed = True
for jar in argv[1:]: for jar in argv[1:]:
if not CheckJar(jar): if not CheckJar(whitelist_path, jar):
passed = False passed = False
if not passed: if not passed:
return 1 return 1