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

Commit ab2a3b00 authored by Alex Klyubin's avatar Alex Klyubin
Browse files

Fix inefficiency in APK entry data alignment.

26f00cda introduced a bug where an
APK entry's extra field is padded for alignment purposes when no
padding is necessary because the entry is aligned without any padding
bytes.

Bug: 27461702
Change-Id: Icb164dbaa26d9686412e2920318a9f40c5ce9751
parent 4f8bde47
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -445,7 +445,8 @@ class SignApk {
            int extraPaddingSizeBytes = 0;
            if (alignment > 0) {
                long paddingStartOffset = offset + ALIGNMENT_ZIP_EXTRA_DATA_FIELD_MIN_SIZE_BYTES;
                extraPaddingSizeBytes = alignment - (int) (paddingStartOffset % alignment);
                extraPaddingSizeBytes =
                        (alignment - (int) (paddingStartOffset % alignment)) % alignment;
            }
            byte[] extra =
                    new byte[ALIGNMENT_ZIP_EXTRA_DATA_FIELD_MIN_SIZE_BYTES + extraPaddingSizeBytes];