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

Commit a9a87ec2 authored by Kelvin Zhang's avatar Kelvin Zhang
Browse files

Disable verity for VABC updates on android R

Bug: 230277030
Test: th
Change-Id: I2872c490c852fb7d3784721e191ece80b4b1fd58
parent c01930f7
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -454,6 +454,11 @@ class BuildInfo(object):
        vendor_prop.GetProp("ro.virtual_ab.compression.enabled") == "true"
        vendor_prop.GetProp("ro.virtual_ab.compression.enabled") == "true"
    return vabc_enabled
    return vabc_enabled


  @property
  def is_android_r(self):
    system_prop = self.info_dict.get("system.build.prop")
    return system_prop and system_prop.GetProp("ro.build.version.release") == "11"

  @property
  @property
  def is_vabc_xor(self):
  def is_vabc_xor(self):
    vendor_prop = self.info_dict.get("vendor.build.prop")
    vendor_prop = self.info_dict.get("vendor.build.prop")
+8 −0
Original line number Original line Diff line number Diff line
@@ -1145,6 +1145,14 @@ def GenerateAbOtaPackage(target_file, output_file, source_file=None):
      logger.info("Either source or target does not support VABC, disabling.")
      logger.info("Either source or target does not support VABC, disabling.")
      OPTIONS.disable_vabc = True
      OPTIONS.disable_vabc = True


    # Virtual AB Compression was introduced in Androd S.
    # Later, we backported VABC to Android R. But verity support was not
    # backported, so if VABC is used and we are on Android R, disable
    # verity computation.
    if not OPTIONS.disable_vabc and source_info.is_android_r:
      OPTIONS.disable_verity_computation = True
      OPTIONS.disable_fec_computation = True

  else:
  else:
    assert "ab_partitions" in OPTIONS.info_dict, \
    assert "ab_partitions" in OPTIONS.info_dict, \
        "META/ab_partitions.txt is required for ab_update."
        "META/ab_partitions.txt is required for ab_update."