Merge "releasetools: compare size between compressed and patch while build otapackage"
This commit is contained in:
@@ -1203,10 +1203,11 @@ class DeviceSpecificParams(object):
|
|||||||
return self._DoCall("VerifyOTA_Assertions")
|
return self._DoCall("VerifyOTA_Assertions")
|
||||||
|
|
||||||
class File(object):
|
class File(object):
|
||||||
def __init__(self, name, data):
|
def __init__(self, name, data, compress_size = None):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.data = data
|
self.data = data
|
||||||
self.size = len(data)
|
self.size = len(data)
|
||||||
|
self.compress_size = compress_size or self.size
|
||||||
self.sha1 = sha1(data).hexdigest()
|
self.sha1 = sha1(data).hexdigest()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@@ -748,7 +748,7 @@ def LoadPartitionFiles(z, partition):
|
|||||||
basefilename = info.filename[len(prefix):]
|
basefilename = info.filename[len(prefix):]
|
||||||
fn = partition + "/" + basefilename
|
fn = partition + "/" + basefilename
|
||||||
data = z.read(info.filename)
|
data = z.read(info.filename)
|
||||||
out[fn] = common.File(fn, data)
|
out[fn] = common.File(fn, data, info.compress_size)
|
||||||
return out
|
return out
|
||||||
|
|
||||||
|
|
||||||
@@ -1379,7 +1379,7 @@ class FileDifference(object):
|
|||||||
for diff in diffs:
|
for diff in diffs:
|
||||||
tf, sf, d = diff.GetPatch()
|
tf, sf, d = diff.GetPatch()
|
||||||
path = "/".join(tf.name.split("/")[:-1])
|
path = "/".join(tf.name.split("/")[:-1])
|
||||||
if d is None or len(d) > tf.size * OPTIONS.patch_threshold or \
|
if d is None or len(d) > tf.compress_size * OPTIONS.patch_threshold or \
|
||||||
path not in known_paths:
|
path not in known_paths:
|
||||||
# patch is almost as big as the file; don't bother patching
|
# patch is almost as big as the file; don't bother patching
|
||||||
# or a patch + rename cannot take place due to the target
|
# or a patch + rename cannot take place due to the target
|
||||||
|
Reference in New Issue
Block a user