releasetools: Resolve symlinks in IsEntryOtaPackage()
Test: Sign target files package where
SYSTEM/product/media/bootanimation-dark.zip is a symlink to
bootanimation.zip.
Change-Id: I4648c3c39c094cb090cbe337c566c3e9ad894691
diff --git a/tools/releasetools/sign_target_files_apks.py b/tools/releasetools/sign_target_files_apks.py
index 5d92ede..b8f848f 100755
--- a/tools/releasetools/sign_target_files_apks.py
+++ b/tools/releasetools/sign_target_files_apks.py
@@ -271,6 +271,10 @@
def IsEntryOtaPackage(input_zip, filename):
with input_zip.open(filename, "r") as fp:
+ external_attr = input_zip.getinfo(filename).external_attr
+ if stat.S_ISLNK(external_attr >> 16):
+ return IsEntryOtaPackage(input_zip,
+ os.path.join(os.path.dirname(filename), fp.read().decode()))
return IsOtaPackage(fp)