Merge "Fix a failure in signing test" am: 936e704999
Original change: https://android-review.googlesource.com/c/platform/build/+/1879016 Change-Id: Id96d5c221485f13064c5b0b13febfed2007a944f
This commit is contained in:
@@ -3953,3 +3953,10 @@ def AddCareMapForAbOta(output_file, ab_partitions, image_paths):
|
||||
OPTIONS.replace_updated_files_list.append(care_map_path)
|
||||
else:
|
||||
ZipWrite(output_file, temp_care_map, arcname=care_map_path)
|
||||
|
||||
|
||||
def IsSparseImage(filepath):
|
||||
with open(filepath, 'rb') as fp:
|
||||
# Magic for android sparse image format
|
||||
# https://source.android.com/devices/bootloader/images
|
||||
return fp.read(4) == b'\x3A\xFF\x26\xED'
|
||||
|
@@ -251,6 +251,7 @@ import common
|
||||
import ota_utils
|
||||
from ota_utils import (UNZIP_PATTERN, FinalizeMetadata, GetPackageMetadata,
|
||||
PropertyFiles, SECURITY_PATCH_LEVEL_PROP_NAME, GetZipEntryOffset)
|
||||
from common import IsSparseImage
|
||||
import target_files_diff
|
||||
from check_target_files_vintf import CheckVintfIfTrebleEnabled
|
||||
from non_ab_ota import GenerateNonAbOtaPackage
|
||||
@@ -1021,13 +1022,6 @@ def GeneratePartitionTimestampFlagsDowngrade(
|
||||
]
|
||||
|
||||
|
||||
def IsSparseImage(filepath):
|
||||
with open(filepath, 'rb') as fp:
|
||||
# Magic for android sparse image format
|
||||
# https://source.android.com/devices/bootloader/images
|
||||
return fp.read(4) == b'\x3A\xFF\x26\xED'
|
||||
|
||||
|
||||
def SupportsMainlineGkiUpdates(target_file):
|
||||
"""Return True if the build supports MainlineGKIUpdates.
|
||||
|
||||
|
@@ -36,7 +36,9 @@ import logging
|
||||
import os.path
|
||||
import re
|
||||
import zipfile
|
||||
|
||||
from hashlib import sha1
|
||||
from common import IsSparseImage
|
||||
|
||||
import common
|
||||
import rangelib
|
||||
@@ -71,10 +73,16 @@ def ValidateFileConsistency(input_zip, input_tmp, info_dict):
|
||||
|
||||
def CheckAllFiles(which):
|
||||
logging.info('Checking %s image.', which)
|
||||
# Allow having shared blocks when loading the sparse image, because allowing
|
||||
# that doesn't affect the checks below (we will have all the blocks on file,
|
||||
# unless it's skipped due to the holes).
|
||||
image = common.GetSparseImage(which, input_tmp, input_zip, True)
|
||||
path = os.path.join(input_tmp, "IMAGES", which + ".img")
|
||||
if not IsSparseImage(path):
|
||||
logging.info("%s is non-sparse image", which)
|
||||
image = common.GetNonSparseImage(which, input_tmp)
|
||||
else:
|
||||
logging.info("%s is sparse image", which)
|
||||
# Allow having shared blocks when loading the sparse image, because allowing
|
||||
# that doesn't affect the checks below (we will have all the blocks on file,
|
||||
# unless it's skipped due to the holes).
|
||||
image = common.GetSparseImage(which, input_tmp, input_zip, True)
|
||||
prefix = '/' + which
|
||||
for entry in image.file_map:
|
||||
# Skip entries like '__NONZERO-0'.
|
||||
|
Reference in New Issue
Block a user