diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2020-09-03 23:11:28 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2020-09-03 23:11:28 +0000 |
commit | 0621a605cbabc81ec01684d999f7187fd9cf78c5 (patch) | |
tree | beb6a93e2e66fa956aee9ad84f8dcd977d8a69aa | |
parent | da8b85ee05e808d976879fd402cd6dc2ad7c4693 (diff) | |
parent | 9988536ecd2d5c3f3cf530bffaf055db11e529e0 (diff) | |
download | vold-android11-qpr1-d-release.tar.gz |
Snap for 6812348 from 9988536ecd2d5c3f3cf530bffaf055db11e529e0 to rvc-qpr1-releaseandroid-11.0.0_r31android-11.0.0_r29android-11.0.0_r28android-11.0.0_r27android-11.0.0_r26android-11.0.0_r24android-11.0.0_r23android-11.0.0_r22android-11.0.0_r21android-11.0.0_r20android-11.0.0_r19android-11.0.0_r18android11-qpr1-s2-releaseandroid11-qpr1-s1-releaseandroid11-qpr1-releaseandroid11-qpr1-d-s1-releaseandroid11-qpr1-d-release
Change-Id: If759fe839b830e3b1db8e6f963abc0f2d3e6fbae
-rw-r--r-- | EncryptInplace.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/EncryptInplace.cpp b/EncryptInplace.cpp index 9d304da9..b1bd11de 100644 --- a/EncryptInplace.cpp +++ b/EncryptInplace.cpp @@ -205,9 +205,16 @@ static int encrypt_groups(struct encryptGroupsData* data) { data->count = 0; for (block = 0; block < block_count; block++) { - int used = (aux_info.bg_desc[i].bg_flags & EXT4_BG_BLOCK_UNINIT) - ? 0 - : bitmap_get_bit(block_bitmap, block); + int used; + + if (aux_info.bg_desc[i].bg_flags & EXT4_BG_BLOCK_UNINIT) { + // In block groups with an uninitialized block bitmap, we only + // need to encrypt the backup superblock (if one is present). + used = (ext4_bg_has_super_block(i) && block < 1 + aux_info.bg_desc_blocks); + } else { + used = bitmap_get_bit(block_bitmap, block); + } + update_progress(data, used); if (used) { if (data->count == 0) { |