Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9c03d6a6 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix signing failure when no entry to convert to store" am: ea586a8d am: 8e9b39e0

Original change: https://android-review.googlesource.com/c/platform/build/+/1978755

Change-Id: I60b98f588cb1a19d122bc866dc4a24d3d8f379cb
parents 5f2ff8e6 8e9b39e0
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -64,7 +64,7 @@ import verity_utils
import ota_metadata_pb2

from apex_utils import GetApexInfoFromTargetFiles
from common import AddCareMapForAbOta
from common import AddCareMapForAbOta, ZipDelete

if sys.hexversion < 0x02070000:
  print("Python 2.7 or newer is required.", file=sys.stderr)
@@ -1034,9 +1034,10 @@ def OptimizeCompressedEntries(zipfile_path):
        if zinfo.compress_size > zinfo.file_size * 0.80 and zinfo.compress_type != zipfile.ZIP_STORED:
          entries_to_store.append(zinfo)
          zfp.extract(zinfo, tmpdir)
    if len(entries_to_store) == 0:
      return
    # Remove these entries, then re-add them as ZIP_STORED
    common.RunAndCheckOutput(
        ["zip", "-d", zipfile_path] + [entry.filename for entry in entries_to_store])
    ZipDelete(zipfile_path, [entry.filename for entry in entries_to_store])
    with zipfile.ZipFile(zipfile_path, "a", allowZip64=True) as zfp:
      for entry in entries_to_store:
        zfp.write(os.path.join(tmpdir, entry.filename), entry.filename, compress_type=zipfile.ZIP_STORED)
+3 −0
Original line number Diff line number Diff line
@@ -2818,6 +2818,9 @@ def ZipDelete(zip_filename, entries):
  """
  if isinstance(entries, str):
    entries = [entries]
  # If list is empty, nothing to do
  if not entries:
    return
  cmd = ["zip", "-d", zip_filename] + entries
  RunAndCheckOutput(cmd)

+0 −3
Original line number Diff line number Diff line
@@ -1521,8 +1521,5 @@ def main(argv):
if __name__ == '__main__':
  try:
    main(sys.argv[1:])
  except common.ExternalError as e:
    print("\n   ERROR: %s\n" % (e,))
    raise
  finally:
    common.Cleanup()